0

Visual Studio 2010 と C# を使用した MVC3 ADO.NET のプロジェクトがあります。データベース テーブルに保持されるアドホック レポートが必要です (レポート タイトルと、レポートを返すために実行される SQL スクリプトの 2 つの列)。結果のレポートは、表に表示するか、CSV ファイルとしてダウンロードできます。

EF を使用して SQL スクリプトを実行したいのですが、クエリから返されるフィールドの数など、返されるエンティティが何であるかが事前にわかりません。「最良の」方法は次のようなものを使用しているようです:

var QueryResults = dataContext.ExecuteStoreQuery<object>(SQLText, String.Empty);

しかし、リフレクションを使用して、一連の文字列であるレポート構造を取得する必要があります。これは物事を行うためのラウンドアバウトな方法のように感じ、返された結果からフィールド/列名を取得する方法がわかりません。

ADO.NET SqlDataReader を使用するとしたら、まさに何をすべきかということになりますが、それは後退したように感じます。

実行時に読み込まれる SQL スクリプトを使用したクイック レポートは、以前から使用していた強力な機能ですが、EF の時代にも取り入れたいと考えています。

これを行う簡単な方法はありますか?

4

1 に答える 1

2

タスクには SqlDataReader を使用する必要があります。クエリの結果が型指定されていないため、このタスクで EF を使用しても利点はありません。

于 2013-04-30T17:36:41.310 に答える