1

次のプロジェクトを含むビジュアル スタジオ ソリューションがあります。

  1. UI
  2. データアクセス
  3. ビジネスロジック
  4. ビジネスオブジェクト

メールで送信したり、csv ファイルとして保存したりするレポートを生成するコードがたくさんあります。

これらの ReportGenerators クラスは、ビジネス オブジェクトを取り込み、ファイルまたは文字列を出力します。

それらをどのプロジェクトに入れますか?私は答えに傾いていますが、他の人の考えを見たいですか?

4

2 に答える 2

2

別のレポート プロジェクトを作成します。UI には属していません (バックグラウンドで実行されると思います)。事実上、「レポート ロジック」レイヤーです。

レポート作成をどのようにサポートしたいかを考えると、バックエンド サービスが必要になるかもしれませんが、将来的には Web サービスを介してデータを公開することも必要になるかもしれません。ユーザーにフロントエンド レポート機能を提供する必要がある場合は、通常の UI -> ロジック -> データ アクセス アーキテクチャと同じように、レポート ロジックにプラグインします。

また、レポート コードを分離すると、将来的に専用のレポート層に自由に抽出できます。

于 2008-11-16T16:35:23.590 に答える
0

manwood の投稿に同意します。次の理由により、レポートをレポートとして作成する必要があります (必要に応じて、レポートの後ろに sproc を配置します)。

  • レポートを実行し、ReportViewer コントロールを介して表示できます。これはかなり簡単です。

  • あなた (そしてさらに重要なことに、アプリケーションをサポートする他の人々) は、アプリケーションの別のビルドをリリースすることなく、より多くのレポートでアプリケーションを拡張できます。アプリケーションのサポートに縛られたくない場合、これは非常に便利な機能です。

  • レポート サービスを介してレポートを公開することもできます。

  • Reporting Services フレームワークを使用すると、Reporting Services (Excel、csv、pdf など) のすべてのデータ エクスポート オプションを利用できます。

于 2008-11-16T19:12:41.383 に答える