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 の時代にも取り入れたいと考えています。
これを行う簡単な方法はありますか?