3

私はこれを少しググったが、良い結果を見つけることができなかった。

今、私はウェブサイトを構築していて、最初からデザインの観点から可能な限り正確にしようとしています。

私が現在直面している問題は、ロギングを開始することを決定するときに、このコードを配置するプロジェクトが必要だったことです。現在のプロジェクトで適切な場所が見つからなかったので、次のように考えました。

プロジェクトの数に関する一般的なガイドラインはありますか?これはかなり小さなプロジェクトになると思いますが、完全に邪魔にならないようにするといいでしょう。

ヒントは大歓迎です:)

4

6 に答える 6

3

絶対にロギング ライブラリが必要です。そして、これを「設計の観点から可能な限り正しい」ものにするつもりで、プロジェクトが些細なものではない場合、間違いなくいくつかのプロジェクトが必要です。問題は、それが Web アプリであるという事実以外に、あなたが何に取り組んでいるかはわかりません。多くの場合、ソリューションの複雑さを決定するのはビジネス ドメインです。

于 2010-03-29T21:38:37.777 に答える
2

小規模なプロジェクトには 3 層アーキテクチャを使用します。

これには以下が含まれます。

  1. アプリケーション層
  2. ビジネス層
  3. データレイヤー

ただし、ロギングを追加する場合は、別のプロジェクトを作成することをお勧めします。これは、ロギングを別のアプリケーションに追加したい場合に、ロギング プロジェクトを含めるだけで済むようにするのにも役立ちます。

于 2010-03-29T21:41:15.750 に答える
1

ソリューションのプロジェクト制限が心配な場合は、どちらの方法でも機能します。しないでください。

私自身は、別のプロジェクトまたはユーティリティ プロジェクトに配置します。

于 2010-03-29T21:35:27.243 に答える
1

200 以上のプロジェクトを含むソリューションがあります。欠点は、Visual Studio の読み込み時間が長いことです。しかし、それ以上の唯一の問題は、十分な RAM があることを確認することです。

また、MSBuild.exeには SLN ファイルのサポートが組み込まれているため、自動ビルドを行う場合は、Visual Studio の代わりにそれを使用することを検討してください。

于 2010-03-29T21:37:40.733 に答える
1

「一緒に変更するものは一緒にパッケージ化する必要があります」、そのガイドラインがどこから来たのか忘れてしまいました(コードコンプリートかな?)。

つまり、アセンブリ (プロジェクト) は、クラス/オブジェクトが下位レベルで行うのと同じ方法で、一貫した抽象化を表す必要があります。

そうです、別のロギング プロジェクトを作成するのが正しい方法です (ただし、独自のロギング プロジェクトを展開する前に、log4net または Microsoft のロギング ブロックを確認してください!)

于 2010-03-29T21:38:37.227 に答える
1

ロギングを別のプロジェクトに入れることはまったく問題ありませんが、実際にはプロジェクトの範囲に依存します.私は通常、このようにプロジェクトをセットアップします

YourProject.Web(Web プロジェクト)

YourProject.Core (すべてのビジネス ロジック)

YourProject.Web.Tests(Watin テスト)

YourProject.Web.Core.UnitTests(単体テスト)

YourProject.Web.Core.IntegrationTests(統合テスト)

プロジェクトがどのように構成されているかを確認するために、 asp.netからオープン ソース プロジェクトをダウンロードすることをお勧めします。

于 2010-03-29T21:39:03.627 に答える