ASP.NET Web アプリケーションのディレクトリ構造に命名規則はありますか?
-
02-07-2019 - |
質問
現在、約 7 つの部分クラス、いくつかのアイコン、3 つのページ、および App_Themes フォルダーを含むサイトを開発しています。知りたかったのですが、小規模プロジェクトよりも大きなプロジェクト向けの業界標準のディレクトリ構造はあるのでしょうか?
たとえば、クラスを別のフォルダーに保存し、画像を別のフォルダーに保存したいとします。現在のディレクトリ構造は次のとおりです(記憶によるものなので正確ではありません)。
- (ルート) にはコードビハインドとフォームが含まれます
- /アプリデータ
- /アプリ_テーマ
- /置き場
- /画像
- /Models - MVC から名前を盗みました。「クラス」よりも適切に聞こえます
- /FusionCharts - フラッシュ チャート ライブラリ
MVC を少し試してみたところ、素晴らしいディレクトリ構造のように見えましたが、私は ASP.NET Ajax を使用しています。
それで、質問は、あなた自身の意見で、このディレクトリ構造をより秩序あるものにする方法はあるのかということだと思います。なぜその決断を下したのかについても答えてください:)。
解決
私たちはマイクロソフトのテクノロジーを使用しているため、マイクロソフトの標準からインスピレーションを受けるのが好きです。プラス ある程度適切な標準は、標準がないよりも優れています, 、特に大規模なチームで作業している場合はそうです。
App_Code は、単なるベスト プラクティスではなく、ASP.NET に機能があるため、もちろん標準です。
私は MVC 標準プロジェクトの構造が気に入っています。
- コンテンツ - 画像、Css、JavaScript を含むサブディレクトリが含まれます
- コントローラー -- おそらく Web フォームでは N/A
- ビュー -- また、WebForms ではやりすぎかもしれません
"Content" フォルダーは ASP.NET プロジェクトの最小公倍数であるため、おそらくキーとなります。したがって、WebForms と MVC の両方を使用する場合、そのフォルダーに静的リソースがあることがわかっていれば、すべてのプロジェクトで安心して作業できるでしょう。
他のヒント
ASP.NET に不足している唯一の「標準」名は次のとおりです。 アプリコード.
あなた自身とコードを保守する人々にとって意味のある規則を使用してください。私が 4 年以上 ASP.NET 開発を行ってきた中で出会った、これに関する業界標準はありません。
私もあなたが言及したのと同じ構造に従っています。私が追加した唯一の点は、スクリプト、CSS、およびリソース用に個別のフォルダーを用意することです。私の知る限り、そのような業界標準はありません。
私は、Css、Js、Images フォルダーをその下に配置できる Content フォルダーを用意するのが好きです。
多くの ASP.Net Web フォーム プロジェクトには、ASCX コントロール用の Controls フォルダーもあります。
CSS スタイル設定には、通常、スタイル フォルダー、画像コンテンツ用の画像 (当然のことですが)、js を使用します。
スキーマ フォルダー、ASHX ハンドラーおよびその他の種類のアプリケーション コード用の App_Code、および MasterPages フォルダーがある場合があります。
Web フォーム プロジェクトで自動作成されるフォルダーには、Properties、App_Data、bin、obj、Packages、TestResults などがあります。