我有一个带有一些listNames的课程
我想动态地将字符串连接到ListName,如List1, List2
,因为我已经在另一个类中声明了List1, List2
:
for (i=1; i <= staffsT; i++)
{
if (dgOut.Data.InstDigitalDetails.digitStaffDetails.Count > (staffRows)*i)
{
List<DigitStaffDetails> stafDt = new List<DigitStaffDetails>();
stafDt = (from r in dgOut.Data.InstDigitalDetails.digitStaffDetails select r).Take(staffRows*i).ToList();
string listName = "dgOut.Data.InstDigitalDetails.digitStaffDetails" + i.ToString();
//here want to type cast string name to objectName
listName= staffDt;
}
}
非常感谢任何帮助
答案 0 :(得分:0)
根据您的代码,我认为您可以使用linq轻松生成列表名称
IEnumerable<int> range = Enumerable.Range(1, staffsT);
IEnumerable<string> listNames = range.Select(i => "dgOut.Data.InstDigitalDetails.digitStaffDetails" + i);
结果枚举将是连接列表名称。
dgOut.Data.InstDigitalDetails.digitStaffDetails1
dgOut.Data.InstDigitalDetails.digitStaffDetails2
...
dgOut.Data.InstDigitalDetails.digitStaffDetailsN
这只是一个示例实现,您可以根据您的使用情况进行调整。