2012-03-12 18 views
1

私はASP .NET MVC 3フレームワークを使用してWebアプリケーションを開発しています。ASP .NET MVC 3 +コントローラとASPX Webフォーム間でデータを共有

Crystal Reports 2011レポートをビューアの1つ、VIEW-1に表示したいとします。
私はCrystalReportViewerコントロールを含むASPX WebFormを作成しました。

別のビューからVIEW-1をJavaScriptプログラミングで読み込みたいとします。
もっと正確には、VIEW-1をポップアップウィンドウに表示したいと思います。
URLにSQLクエリを渡すことができます。

VIEW-1を読み込むHTTPリクエストは、私のアクションメソッドの1つによって捕捉されます。
アクションメソッドでReportDocumentオブジェクトをプログラムでインスタンス化して構成します。

次に、レポートを実行してHTTP応答を生成する前に、ReportDocumentオブジェクトをVIEW-1と共有したいとします。
ReportDocumentオブジェクトは、VIEW-1の実行中にCrystalReportViewerにバインドされます。

私は通常、ViewDataプロパティを使用してコントローラとRazorビューの間でデータを共有します。
しかし、私はコントローラとASPX WebFormの間でデータを共有することは考えていません。
本当にありがとうございます。

+0

クエリ文字列値(idを)渡し、その後、他の部分(Webフォーム/ MVC)でデータ/オブジェクトを構築することができますか?それのメリットは何ですか?ポップアップURLを直接Webフォームに向けてレポートを生成するために必要な引数を渡すのはなぜですか? –

+0

データを取得し、アクションメソッドでReportDocumentを埋め込むロジックを実装したいので、これを行うつもりはありません。 – user1139666

答えて

1

セッション変数を使用してデータを共有できます。 セッションに非常に多くのデータを格納するのは良い考えではありません。セッションはサーバーに格納されており、セッションデータが多い場合にサーバーが泣くようになります。

あなたはちょうどあなたがコントローラのアクションを必要としないのはなぜ

関連する問題