我有一个包含 70 列(字符串、整数、一些日期)的表,有时我只需要 4 或 9 列。
有没有办法做类似
Select(row => row as IMySubset)
的事情?
如果没有(我假设不是,因为我找不到任何东西),我该如何选择 9 列,并让它们填充定义的类(不是动态类型)?
如果这不能做到,动态对象是唯一的方法吗? 它们可以转换为接口,这样就可以工作了。但如果有办法
Select( IMyInterface)
,那就干净多了。
如何仅选择 9 列,并让它们填充已定义的类(而不是动态类型)?
只需将查询结果投影到目标类型的新实例中即可。
from e in MyTable
select new MySubset() {A=e.A, B=e.B,...}