【发布时间】:2012-03-30 00:10:36
【问题描述】:
我有List<Employee> listEmployees
我想选择一些在编译时未知的动态列,例如:
var result = from l listEmployees
select ""
我试过listEmployees.select("Name");
但它会抛出一个错误:
'System.Linq.Enumerable.Select(System.Collections.Generic.IEnumerable, System.Func)' 无法从用法中推断出来。尝试明确指定类型参数。
如何仅选择在运行时确定的列?
【问题讨论】:
-
@SLaks 出于性能考虑,如果我只需要表中 300 列中的几列,那么只选择我需要的列不是更好吗?还是说选择整行并使用所需的列仍然足够好(性能方面)?
-
@Sнаđошƒаӽ:您应该在编译时指定所需的列。如果您在编译时不知道它们,那么您可能不应该使用 LINQ。