0

私が取り組んでいる調査システムのレポート用に、さまざまな列数のデータを返すストアドプロシージャを開発しました。

これらのテーブルのすべての列を演算子に表示します:ユーザー、質問、回答。

ユーザーは、レポートに表示する各テーブルから列を選択します。例:ユーザー:名前、年齢、郵便番号。
質問:質問2、質問4回答:回答2、回答3、回答4。

次に、パラメータをストアドプロシージャに渡すと、ストアドプロシージャは、ユーザープロパティ、質問、または回答ごとに1つの列を返します。DB内の各ユーザーの行。

例: 例

ご覧のとおり、ストアドプロシージャは、2列の3行から50列の500行までの任意の行を返すことができます。エンティティフレームワークでストアドプロシージャを使用する方法はありますか?最初は複雑なリターンタイプで試しましたが、この場合、そのアプローチは機能しないようです。

4

1 に答える 1

0

EFは、設計時に定義された固定数の列を持つストアドプロシージャのみをサポートします。この手順を実行するには、従来のADO.NETを使用する必要があります。

編集:列の総数が固定されている場合(50と述べた場合)、これらすべての列を含む単一のクラスを作成し、それを結果として実行に使用できます。EFは、結果セットに存在するプロパティのみを入力します。

于 2012-05-08T14:32:03.047 に答える