2

新しい ASP.NET Web API プロジェクトを開始しています。私は自分のソリューションで自分のプロジェクトを整理するのが得意ではなかったことを認めます。もっと上手くなりたいので質問です。

まず、使用する予定の命名規則は、いくつかの場所 (ブログ、MSDN など) で見つけたもので、CompanyName.ProductName.Component が含まれています。

私の混乱は、ソリューション内のプロジェクトに関するものです。私はサービスが機能しているという概念の証明を持っていますが、すべてが 1 つのプロジェクトにあります。動作しますが、これはさまざまな理由で良くないため、コンポーネントを分離したいと考えています。このプロジェクトでは、EF、データ リポジトリ用のインターフェイス、テスト プロジェクト、ビジネス オブジェクト、および my Web API コントローラーを使用します。ソリューションとさまざまなプロジェクトをどのように整理すればよいですか?

4

1 に答える 1

0

この質問に対する万能の答えはありません。ただし、これは私のデフォルトです:

ここに画像の説明を入力

いくつかの追加メモ:

Web、コア、およびデータのプロジェクト名は [productName].[layer] ですが、デフォルトの名前空間とアセンブリ名を [company].[product].[layer] に変更します。パスの長さを抑えることができるように、完全には修飾しません (パスが 256 文字に達すると、ビルドは文句を言います)。

モデル プロジェクトには通常、\validation、\exceptions などの他のフォルダーもありますが、モデル クラスと一緒にデータ アクセス用のインターフェイスを配置することが多いことを説明したかっただけです。

テスト プロジェクトの既定の名前空間やアセンブリ名は変更しません。これらはソリューション以外では重要ではないからです。

そうは言っても、私の API が非常に単純な場合 (コントローラーが 2 つしかない場合)、API 用の 1 つのプロジェクトと 1 つのテスト プロジェクトを使用する可能性があります。これを行う場合、各論理レイヤー (コア、データなど) の API の下にフォルダーを追加します。

于 2012-10-27T03:14:38.857 に答える