「マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次 †
概要 †
ASP.NETアプリケーションの種類と構成について纏めている。
詳細 †
ASP.NETアプリケーションの種類について †
質問 †
ASP.NETアプリケーションを作成する際に、下記2つからの
選択があると思いますが、選択する上での条件等ありますか?
- ASP.NET Webサイト
- ASP.NET Webアプリケーション
- は、コードファイル含めてサーバに配置し、実行時にコンパイルされ
- は、コンパイルした実行モジュールをサーバに配置される
という認識ですが、選択する上でのメリット、デメリット等の情報を教えて下さい。
※ 参考:Webアプリケーション、Webサイト
回答 †
- マストな機能要件・非機能要件と言うより、開発時の利便性によって左右されます。
- Web アプリケーション プロジェクトでは、
designer.cs(.vb)が生成されるので、こちらを何らかの目的で
使いたいと言う開発者目線の要求はあるかもしれません。
- Web サイト プロジェクトでは、
アセンブリの参照設定の代わりに、Binフォルダにアセンブリを放り込む運用ができるので、
ライブラリに対してレイトバインドする場合等は、こちらの方が使い易いという側面があります。
- IIS上でF5デバッグする場合は、Web サイト プロジェクトである必要があります。
- なお、シナリオによっては、Web アプリケーション プロジェクトしか選択できません。
(確かに、Web Deploy パッケージやMicrosoft AzureのPaaSなど、
一式をパッケージングするものは、Web アプリケーションである必要がある。)
- マイクロソフトは、Visual Studio 2012(.NET4.5) 以降の
新規開発に Web アプリケーションを推奨しているようです。
- Web Application Projects versus Web Site Projects in Visual Studio
https://msdn.microsoft.com/en-us/library/dd547590.aspx
For new development, we recommend that you choose web application projects.
→ 新規開発では Web アプリケーション プロジェクトを選択することを推奨する。
For example, the next Visual Studio release after Visual Studio 2012 will have new tooling
for creating web projects, and this new tooling will work only with web application projects.
→ Visual Studio 2012 以降、Web プロジェクト開発のための新しいツールが出ているが、
それらは Web アプリケーション プロジェクトでのみ使用できる。
ソリューション、プロジェクトの構成について †
質問 †
複数のサブシステムが存在する場合、
ソリューション、プロジェクトの構成としては、
どのようなパターンが考えられますでしょうか。
(例)サブシステムごとに1ソリューション、1プロジェクト
or 基幹システムとして1ソリューション、サブシステムごとに1プロジェクト等。
回答 †
選定基準については、こちらを確認下さい。
こちらの選定は、Web サイト、Web アプリケーションの選定と比べると、
- 開発時の利便性と言う観点よりも、
- データ共有の範囲やデプロイなど、
マストな顧客要件に関連する所が多くあります。
なお、上記の資料については、
当時VS2005のSP1のリリース前では、
が存在しなかったので、
- Web サイト プロジェクト
- Web アプリケーション プロジェクト
の違いを考慮していません。
Webサイトから Webアプリケーションへの変換 †
なお、以下の手順で、Web サイト プロジェクトから Web アプリケーション プロジェクトへの変換が可能。
参考 †
Tags: :.NET開発, :ASP.NET, :ASP.NET Web Forms