質問

1 つの Linq2Sql クエリを使用して、単純なデータベース テーブルから 2 つのレコード セットを返したいと考えています。これがストアド プロシージャを呼び出す Linq2Sql を使用している場合の方法はわかっていますが、ストアド プロシージャは使用したくありません。

それは可能ですか?

私は ここで記事を見つけました これには解決策が提案されていますが、現在のコンテキストを部分的に拡張するために大量のコードを作成しなければならないという考えは嫌いです。のように...痛い!!

ただそうではないようです...右 ?

記事内の提案がそれを行う唯一の方法でしょうか?他の方法(ストアドプロシージャを使用せず、Linq2Sqlを使用する)はありますか?

願い マット・ウォーレン これに答えるためにここに来ました:)

編集

私は遅延ロード / 積極的ロード (および DataLoadOptions の使用) の方法について質問しているのではありません。それは違う概念です。

役に立ちましたか?

解決

潜在的には、私が見つけたMultiple Active Result Sets (MARS)を使用してこれを行うことができます。 このページ. 。それは MSDN の記事 このトピックについては、特に LINQ to SQL とは関係ありませんが、 これはそうなります おそらくあなたがチェックしたいものです。

そうは言っても、幸運を祈ります。 バグが投稿されました どのように動作しないのかについては Microsoft に問い合わせてください。修正は .NET 4.0 まで行われません。

最後に、ストアド プロシージャを使用したくないということは理解していますが、使用する場合は、非常に簡単なガイドを見つけました。 ここ そして ここ 始めるために。

他のヒント

これはストアドプロシージャせずに行われて、私はそれを聞いた唯一の方法です。そして、あなたはそれが一見シンプルなコンセプトのために少し過剰に思えるんですね。それは私だった場合、私はちょうど別の結果セットとしてレコードを取得します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top