在没有存储过程的情况下在Linq2Sql中返回多个结果?

时间:2009-04-21 01:32:31

标签: linq-to-sql multiple-records multiple-results

我想从一个带有一个Linq2Sql查询的简单数据库表返回两个记录集。我知道如果这是使用Linq2Sql调用存储过程,但我不想使用存储过程。

可以这样做吗?

found an article here有一个建议的解决方案,但我讨厌必须编写大量代码来部分扩展当前上下文?喜欢...... OUCH !!!

似乎没有......对吗?

文章中的建议是唯一的方法吗?还有其他方法(不使用存储过程并仍然使用Linq2Sql)?

希望Matt Warren在这里回答这个问题:)

修改

我不是在询问如何延迟加载/急切加载(以及使用DataLoadOptions)。这是一个不同的概念。

2 个答案:

答案 0 :(得分:1)

您可以使用我从this page找到的多个活动结果集(MARS)来执行此操作。它是关于该主题的MSDN article,但没有特别涉及LINQ to SQL,但是this one does可能是您想要检查的那个。

话虽如此,祝你好运,因为看起来微软有一个bug posted关于它如何不起作用,直到.NET 4.0才会出现修复!

最后,我了解到您说您不希望使用存储过程,但如果您这样做,我会找到一个非常简单的指南herehere来开始使用。

答案 1 :(得分:0)

这是我听说没有存储过程的唯一方法。而你是对的,对于一个看似简单的概念来说似乎有些过分。如果是我,我只是将记录作为单独的结果集。

相关问题