1

実際に開発するのではなく、.NET で IIS がスピンアップするのを待つことに半分近くの時間を費やしているようです。

それは非常に単純です。コード ビハインド ファイルにアクセスして更新するたびに、IIS がリサイクルするのに 15 秒から 1 分以上かかります。

これを改善する方法はありますか?それは腹立たしいです。

私は Web サイト プロジェクト (Web アプリケーション プロジェクトではありません) で作業しており、Windows 7 を実行し、.NET 4 フレームワークで作業しています。私のマシンは SSD を搭載してから数か月しか経っていないので、ハードウェアがボトルネックになることはないと思います。

また、実行速度はさらに遅くなりますが、ほとんどの場合、実際にアプリケーションをデバッグしていません。

4

2 に答える 2

3

編集

使用している IIS の種類に関係なく、作業を高速化するための最良の方法の 1 つは、RAM ドライブを作成し、TEMP および特に ASP.NET Temporary Filesフォルダーをそこにポイントすることです。ASP.NET 一時ファイルには、ページ用にコンパイルされたバイナリが含まれています。ASP.NET は、起動時にこのフォルダーをチェックし、変更のあるページのみを再コンパイルします。このフォルダを RAM ドライブに置くと、起動時間が桁違いに長くなります。この手法は、複数の記事で説明されています。「苦労せずにASP.NETのコンパイル/ロード時間を大幅に短縮

追加のボーナスとして、SSD の消耗も軽減します。

オリジナル

Web アプリケーションの場合

マシンにローカルな IIS サービスではなく、Visual Studio Development Server または IIS Express を使用するようにプロジェクトを設定したようです。これが発生すると、Dev Server がゼロから開始されるため、大幅な遅延が発生します。

これは、新しい Web プロジェクトのデフォルト設定です。開発サーバーは、ランダムに使用可能なポートでルート仮想ディレクトリとしてプロジェクトを開始するので便利です。デメリットは起動に時間がかかること。

ローカル IIS を使用し、特定の仮想ディレクトリの下で開始するようにプロジェクトを変更することで、作業を大幅に高速化できます。この場合、サーバーは既に実行されており、必要なのはアプリケーション プールをリサイクルすることだけです。アプリ プールのリサイクルは実際には非常に高速であり、リサイクルのたびに再コンパイルが必要な aspx ページに大量のコードが埋め込まれていない限り、おそらく遅延に気付かないでしょう。

デバッグに使用するサーバーの種類を変更するには、Web アプリケーションの[プロパティ] > [Web ]に移動し、Serversセクションで選択を [開発サーバー] から [ローカル IIS] に変更します。Project Urlアプリケーションの仮想ディレクトリを作成する必要がありますが、これはテキスト ボックスに必要な URL を入力して [仮想ディレクトリの作成] ボタンをクリックすることで簡単に作成できます。

Web サイト プロジェクトの場合

IIS Express/Visual Studio Dev Server とローカル IIS インスタンスの影響は、Web サイト プロジェクトにも当てはまります。ファイルベースの Web サイトは、デフォルトで dev サーバーを使用します。ローカル IIS サービスに変更するプロセスは異なります。ありがたいことに、 「方法: Visual Studio で Web プロジェクト用の Web サーバーを指定する」で詳しく説明されています。

于 2013-08-07T20:11:19.233 に答える
0

Web サイト プロジェクトがどのように機能するかを理解する必要があります。各ファイルは、変更のたびにバックグラウンドで独自の DLL にコンパイルされます。これを変更する方法はありません。

さて、どれくらい時間がかかるかはコードによって異なります。速度を向上させるためにできることがあります。\Windows\Microsoft.NET にある ASP.NET 一時ファイル フォルダーを消去し、使用していない参照や使用していない using ステートメントを取り除くことができます。これにより、コンパイル時間が短縮されます。

いずれにせよ、Web サイト プロジェクトは実際には十分にサポートされておらず、多くの欠点があります。唯一の本当の利点は、オンザフライでコンパイルすることです。これは、とにかくそれほど大きな利点ではありません。

この記事を読みたいと思うかもしれません:

http://msdn.microsoft.com/en-us/library/dd547590.aspx

新規開発の場合は、Web アプリケーション プロジェクトを選択することをお勧めします。このトピックでは、Web サイト プロジェクトにはいくつかの利点があることを説明しますが、Web サイト プロジェクトを選択する多くの開発者は、最終的に、認識されている利点よりも欠点の方が重要であることに気付きます。さらに、新しい ASP.NET 機能が開発されても、Web サイト プロジェクトで常に利用できるとは限りません。たとえば、Visual Studio 2012 の次の Visual Studio リリースには、Web プロジェクトを作成するための新しいツールが含まれ、この新しいツールは Web アプリケーション プロジェクトでのみ機能します。

于 2013-08-07T20:13:06.100 に答える