質問

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

  1. UI
  2. DataAccess
  3. ビジネスロジック
  4. BusinessObjects

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

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

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

役に立ちましたか?

解決

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

reportngをサポートする方法について考える場合、バックエンドサービスが必要な場合がありますが、将来的にはWebサービスを介してデータを公開することもできます。ユーザーにフロントエンドのレポート機能を提供する必要がある場合、通常のUIと同様にレポートロジックにプラグインします->ロジック->データアクセスアーキテクチャ。

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

他のヒント

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

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

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

  • 次の方法でレポートを公開できます レポートサービスも同様です。

  • すべてのデータエクスポートオプションを取得します レポートサービス(Excel、csv、 pdfなど) サービスフレームワーク。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top