我有这样的声明=
var result =
from c in displayedUsers
select
new string[]
{
c.GetType().GetProperty(columnList[0]).GetValue(c, null).ToString(),
c.GetType().GetProperty(columnList[1]).GetValue(c, null).ToString(),
c.GetType().GetProperty(columnList[2]).GetValue(c, null).ToString(),
c.GetType().GetProperty(columnList[3]).GetValue(c, null).ToString()
};
我想知道的是是否可以不必具有静态列表长度(在本例中您可以看到只有 4 个项目)
如果“columnList”数组中有 N 列,我该如何执行此操作?
类似于=的东西
var result =
from c in displayedUsers
select
new string[]
{
foreach item in columnList GetValue
...
};
谢谢!
最佳答案
这样的事情应该有效:
var columnList = new []{"cola", "colb"};
var result = from c in displayUsers
select
(
(
from col in Columnlist
select c.GetType().GetProperty(col).GetValue(c, null).ToString()
).ToArray();
)
关于c# - 动态 Linq select 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20482337/