【问题标题】:Return Multiple Results in Linq2Sql without a stored procedure?在没有存储过程的情况下在 Linq2Sql 中返回多个结果?
【发布时间】:2010-10-20 17:18:10
【问题描述】:

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

有可能吗?

我有一个建议的解决方案found an article here,但我讨厌必须编写大量代码来部分扩展当前上下文的想法?!比如……哎哟!!!

只是看起来不太……对吗?

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

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

编辑

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

【问题讨论】:

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


    【解决方案1】:

    您可能会使用我从this page 找到的多个活动结果集 (MARS) 来执行此操作。这是一个关于该主题的MSDN article,但与 LINQ to SQL 没有具体关系,但this one does 可能是您想查看的。

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

    最后我明白你说你不想使用存储过程,但如果你这样做了,我找到了一个非常简单的指南 herehere 开始。

    【讨论】:

    • 感谢您的帖子 - 我现在就去看看。 RE:存储过程。我在我的 linq2sql 中使用它们(并且喜欢它!)但我只是想测试一些其他的东西:)
    【解决方案2】:

    这是我听说在没有存储过程的情况下完成它的唯一方法。你是对的,对于一个看似简单的概念来说,这似乎有点过分。如果是我,我只是将记录作为单独的结果集获取。

    【讨论】:

    • 这就是我现在正在做的事情......这让我很生气:(当我觉得它可以被批量处理时,我讨厌看到对数据库的多次点击。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-09-27
    • 2011-08-31
    • 2013-08-02
    • 2011-04-22
    • 2016-06-12
    • 2014-12-07
    相关资源
    最近更新 更多