データのページリストをユーザーに表示するグリッドを持つWebアプリケーションがあります。ユーザーには、結果をExcelスプレッドシートにダウンロードするオプションが必要です。ただし、グリッドに表示されるアイテムは、前述のようにページングされており、結果セット全体が必要です。さらに、アイテムごとに約7つのフィールドしか表示していませんが、スプレッドシートにはアイテムの20以上のフィールドがすべて含まれています。したがって、私はグリッドからExcelへのソリューションを探していません。
私は以前に実際に働いたことのあることをしようとしています。以前の雇用主(ソースコードは利用できません)では、SQLServerレポートをRDLCファイルとして含むアプリケーションがありました。コードでReportViewerコントロールを作成します(var reportViewer = new ReportViewer())。次に、レポートをコントロールにバインドし、データソースを指定して、必要な形式で結果をレンダリングします。私の場合、Excelファイルが必要です。次に、応答でExcelFileをユーザーにストリーミングします。
MVC3を使用しているので、ExcelファイルをFileContentResultとして返します。私は1日インターネットを検索してきましたが、探しているものがまったく見つかりません。