Jon*_*nas 5 .net linq linq-to-sql
我正在玩一些Linq-SQL的东西,做这样的事情:
var foo = from f in db.Foo where f.Bar > 5 select f;
Run Code Online (Sandbox Code Playgroud)
这一切都很好,花花公子,我知道我也可以这样做:
var foo = from f in db.Foo where f.Bar > 5 select new { f.Bar, f.Baz };
Run Code Online (Sandbox Code Playgroud)
我想知道的是,如果我想在运行时确定要选择哪些Foo部分,我可以将该查询的选择部分分解出来吗?如:
var foo = from f in db.Foo where f.Bar > 5 select SomeMethodThatReturnsThePropertiesOfFooIReallyWant();
Run Code Online (Sandbox Code Playgroud)
编辑澄清:我正在寻找SomeMethod ...()的语法和返回类型.
如果我想这样做一次:
select new { f.Bar, f.Baz };
Run Code Online (Sandbox Code Playgroud)
但其他时候这样做:
select new { f.Baz, f.Other };
Run Code Online (Sandbox Code Playgroud)
基于内存中的数据(没有做一个巨大的案例陈述),如果可能的话,我该如何做?
当然,尽管使用流畅的语法更容易:
var query_foo = db.Foo.Where(f=>f.Bar > 5);
// :
var foo =query_foo.Select(f=>SomeMethodThatReturnsEtc(f));
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
318 次 |
最近记录: |