我有14个LINQ查询在一种方法中解决。他们都没有基本查询,我可以将它们作为子查询挂起,然后将结果存储为匿名类型实例的属性。如何在不使用基本查询的情况下在一个操作中解析多个linq查询?
与其单独调用14个数据库,我怎样才能确保它们在同一个操作中都被调用?
UPDATE
我结束了使用该做的伎俩一个狡猾的黑客。我知道,总会有在user表中的至少一个用户,所以我最终使用:
var data = (from tmp in DataContext.Users
select new {
Property1 = (from...),
Property2 = (from...),
PropertyN = (from...),
}).First();
更新2
它的答案中的一个已经暗示,否则可能创建MARS(多活动结果集)错误。这些错误是什么(我从来没有见过),它们为什么会发生,并且在这一问题的整个前提中是否有错误?也就是说,我的观点有缺陷:要求数据库一次性返回所有内容要比完成十四个完全独立的LINQ查询更快更有效?
UPDATE 3
我认为我的做法是多余的,从实用的角度来看,应当以不同方式处理,或者通过存储过程或某种延迟/混合的方法。
也许结果。 – 2009-05-06 19:01:38