【发布时间】:2008-12-17 20:30:14
【问题描述】:
我正在玩一些 Linq-SQL 的东西,做这样的事情:
var foo = from f in db.Foo where f.Bar > 5 select f;
这一切都很好,而且我知道我也可以这样做:
var foo = from f in db.Foo where f.Bar > 5 select new { f.Bar, f.Baz };
我想知道的是,如果我想在运行时确定要选择 Foo 的哪些部分,我可以排除该查询的选择部分吗?如:
var foo = from f in db.Foo where f.Bar > 5 select SomeMethodThatReturnsThePropertiesOfFooIReallyWant();
编辑澄清:我正在寻找 SomeMethod...() 的语法和返回类型。
如果我有时想这样做:
select new { f.Bar, f.Baz };
但其他时候这样做:
select new { f.Baz, f.Other };
基于内存中的数据(没有做一个巨大的案例陈述),如果可能的话,我会怎么做?
【问题讨论】:
标签: .net linq linq-to-sql