プロジェクト ファイルには、この回答からこれを行うための推奨される方法が既に含まれています。しかし、それは私たちの場合には十分ではありません。たまたま別のプロジェクトでビューを共有しました。いくつかのファイルは、aspnet_compiler を使用しようとするとコンパイル エラーを引き起こす共有 .master ページを使用します。
私はこの方法でそれを達成しようとしました:
<Target Name="AfterBuild" Condition="'$(MvcBuildViews)'=='true'">
<PropertyGroup>
<TempFolder>$(ProjectDir)\..\temp</TempFolder>
</PropertyGroup>
<AspNetCompiler VirtualPath="temp" TargetPath="$(TempFolder)" PhysicalPath="other views location" />
<AspNetCompiler VirtualPath="temp" TargetPath="$(TempFolder)" PhysicalPath="$(ProjectDir)" />
</Target>
aspnet_compiler ではTargetPath
フォルダーを空にする必要があるため、これは問題ありません。VirtualPath
theと noだけで試してもTargetPath
うまくいきません。これVirtualPath
は一時的なものであり、2 番目のコンパイラ呼び出しに持ち越されないためです。
これを達成する方法はありますか?もちろん、マスター ページをこのプロジェクトにコピーすることもできますが、それは適切な解決策ではありません。