サイトがいつ「コンパイル済み」と見なされるのか理解できません。私が読んだことを理解しているように、Visual Studio 内から Publish または Build Deployment Package オプションを使用するとプリコンパイルされますが、xcopy などを使用するだけではプリコンパイルされません。あれは正しいですか?
2 に答える
ASP.NET WebSiteプロジェクトには、aspx、aspx.cs、ascx、ascx.csなどを含むすべてのファイルがそのまま本番Webサーバーにコピーされるxcopy展開のオプションがあります。ASP.NETランタイムは、最初の要求を受信したときにサイトをコンパイルします。C:\ Windows \ Microsoft.NET \ Framework \ v \ Temporary ASP.NET Filesフォルダーを確認すると、出力が表示されます。ファイルをWebサーバーにコピーするだけなので、これは明らかに展開が非常に簡単です。ただし、最初の訪問者は、サイトが初めてコンパイルされるときに料金を支払います。公開オプションは、展開前にこの機能を実行します。Webサイトプロジェクトをコンパイルし、すぐに実行できるアセンブリを生成します。公開には、aspxファイルをそのままにして、変更できるようにするオプションがあります。どちらの場合もありません。アセンブリにコンパイルされたcsファイル。小切手ウォークスルー:詳細については、Webサイトの公開。
HTH
これは、Web コードの MSIL DLL があるという意味で "コンパイル" されています。ただし、JIT コンパイルが必要です。.NET 2.0 以降を使用している場合は、このウォームアップ時間を防ぐために NGEN ユーティリティを使用する必要があります。NGEN は、アプリケーションの最初の「起動」時間をなくすためにのみ役立つことに注意してください。JIT 化されたコードは NGEN 化されたコードと同期しなくなる可能性があるため、保守が難しくなります。私のエンタープライズ環境では、これらの潜在的な落とし穴があるため、NGEN を使用しないことにしました。
以下のリンクを参照してください。
ASP.NET アプリケーションに NGEN を使用すると役に立ちますか?