ASP.NET WebアプリケーションとWebサイトの違い
タイトルの件について、非常に分かりやすく解説している記事がありました。
ASP.NETアプリケーションの構造― 第2章 ASP.NET の基礎 2.2 ―
上の記事でも十分纏まっていますが、
備忘録としてWebアプリケーションとWebサイトの違いを書いておきます。
WebアプリケーションとWebサイトの最大の違いは
コードファイルのコンパイルのタイミングです。
これにより、以下の違いが発生します。
◆Webアプリケーションにおけるコードファイルの扱い
・ビルド処理・・・コンパイルし、.dllを作成する。
・Webサーバーへの配置・・・.dllを配置する。
・ブラウザからの呼び出し時・・・.aspxのみコンパイルする。コードファイルはコンパイルしない。
◆Webサイトにおけるコードファイルの扱い
・ビルド処理・・・コンパイルエラーのみチェック。
・Webサーバーへの配置・・・コードファイルをそのまま配置する。
・ブラウザからの呼び出し時・・・.aspx、コードファイルをコンパイルする。
どちらを使うべきかですが、上記記事ではWebアプリケーションを推奨しています。
その理由は以下の通りです。
◆Webアプリケーションを推奨する理由
・.Net2005より前のアプリは動かない可能性がある。
・ASP.NET MVC、Windows AzureではWebサイトは利用できない。