生成コードを報告する場所
-
08-07-2019 - |
質問
次のプロジェクトを含むビジュアルスタジオソリューションがあります:
- UI
- DataAccess
- ビジネスロジック
- BusinessObjects
今では、電子メールで送信されるか、csvファイルとして保存されるレポートを生成するコードがたくさんあります。
これらのReportGeneratorsクラスは、ビジネスオブジェクトを取り込んで、ファイルまたは文字列を出力します。
どのプロジェクトに入れますか?私は答えに傾いていますが、他の人の考えを見てみたいですか?
解決
別のレポートプロジェクトを作成します。 UIに属していません(バックグラウンドで実行されると想定しています)-これは事実上「レポートロジック」レイヤーです。
reportngをサポートする方法について考える場合、バックエンドサービスが必要な場合がありますが、将来的にはWebサービスを介してデータを公開することもできます。ユーザーにフロントエンドのレポート機能を提供する必要がある場合、通常のUIと同様にレポートロジックにプラグインします->ロジック->データアクセスアーキテクチャ。
また、レポートコードを分離した場合は、将来的に専用のレポート層に自由に抽出できます。
他のヒント
Aはマンウッドの投稿に同意します-次の理由により、レポートとして作成する必要があります(必要に応じてレポートの後ろにsprocを配置します)。
-
レポートを実行して表示できます ReportViewerを介してそれら コントロール。これはかなり 簡単です。
-
あなた(そしてもっと重要なのは他の人たち) アプリケーションをサポートすることができます さらにアプリケーションを拡張する リリースする必要のないレポート アプリケーションの別のビルド。アプリケーションのサポートに縛られたくない場合、これは非常に便利な機能です。
-
次の方法でレポートを公開できます レポートサービスも同様です。
-
すべてのデータエクスポートオプションを取得します レポートサービス(Excel、csv、 pdfなど) サービスフレームワーク。