3

私はmsbuildを使用して、展開の準備ができているWebサイトを自動的にビルドしてパッケージ化します。Visual Studio 2008を使用してプロジェクトをコンパイルしてから公開すると、すべてが正常に機能します。

ただし、msbuildを使用すると、AspNetCompilerが.csprojに含まれていないが、バージョン管理にはまだ存在しているaspxファイルとascxファイルをコンパイルしようとしているため、エラーが発生します。

バージョン管理からそれらを削除できることは知っていますが、これらのファイルがコンパイルされている理由を誰かに教えてもらえますか?

これが私のmsbuildタスクです。

    <AspNetCompiler                
     TargetPath="$(PackageDir)\Web"
     VirtualPath="/"
     PhysicalPath="$(buildDirectory)\Web"
     Force="true"
     />

ありがとう!

4

1 に答える 1

5

_aspnet_compiler.exe_をラップするAspNetCompilerタスクは、 .csproj内のファイルのみをコンパイルするのではなく、アプリケーション内のすべての「コンパイル可能な」ファイルをコンパイルします。

景品は、実行可能ファイルのコマンドラインパラメーターのいずれも.csprojを入力として使用せず、パスのみを使用することです。(ディレクトリ内で.csprojを検索すると主張する人もいるかもしれませんが、誰かが1つのディレクトリに2つのプロジェクトファイルを置いた場合の対処方法など、独自の問題が発生する可能性は低いです。)

于 2011-03-17T05:59:21.193 に答える