2011-11-07 17 views
2

ビルド後のイベントを使用するいくつかのソリューションが見つかりました。プレコンパイル済みの公開ASP.net-MVC VS2010

(最初のユーザービューの遅延を防ぐため)が、開発環境でそれらをコンパイルしないコンパイルビューで ASP.NET MVCのWebサイトを公開する方法はあります(より高速なサイトをコンパイルしますか)?

ありがとうございました!

P.S.私は<AspNetCompiler VirtualPath="temp" PhysicalPath="$(WebProjectOutputDir)" />

<MvcBuildViews>true</MvcBuildViews> 
<EnableUpdateable>false</EnableUpdateable> 

が、初期バージョン

私と同じことを行い理解できるように理想的には、Visual Studioの機能を公開2010

編集

をワンクリックを設定することです.csprojは次のようになります。

... 
    <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> 
    <MvcBuildViews>true</MvcBuildViews> 
    <EnableUpdateable>false</EnableUpdateable> 
... 

と表示プリコンパイルを表示するが、私はAsp.netアプリケーションのような配備のための単一のライブラリを得ることができません。最初のロードページの遅れがまだ存在する理由は...

だ(あなたが、それは開発中あなたを遅くしないように、あなたはリリースモードでコンパイルする場合にのみビューをコンパイルするビルド後のイベントを設定することができ

答えて

2

を助けてください

たとえば、.csprojの次のノードは、プロジェクトがリリースモードでコンパイルされたときにのみビューをコンパイルします。

<Target Name="AfterBuild" Condition="'$(Configuration)'=='Release'"> 
    <AspNetCompiler VirtualPath="temp" PhysicalPath="$(WebProjectOutputDir)" /> 
    </Target> 
+0

ヘクターありがとう!ビルド時にビューをコンパイルすることがわかりましたが、初めてページを読み込んだ場合でも、読み込みに続くものよりも時間がかかります。その遅延を取り除くことは可能ですか? – Cheburek

+0

私はそのための組み込み機能について知らない。最初の負荷の遅延は、最初のデータアクセスのような他の要因による可能性もあることに注意してください。 –

0

またはあなたがtrueにMvcBuildViewsを設定するが、唯一の特定の構成のためにそれを行うことができます:私は条件にAnd '$(Configuration)'!='Debug'"を追加しました

<MvcBuildViews>true</MvcBuildViews> 

<Target Name="MvcBuildViews" AfterTargets="AfterBuild" Condition="'$(MvcBuildViews)'=='true' And '$(Configuration)'!='Debug'"> 
    <AspNetCompiler VirtualPath="temp" PhysicalPath="$(WebProjectOutputDir)" /> 
</Target> 

注意してください。

関連する問題