我有这样的声明=
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
...
};
谢谢!
答案 0 :(得分:2)
这样的事情应该有效:
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();
)
答案 1 :(得分:0)
如果可以将columnList强制转换或转换为List,那么可以使用ForEach方法。