我创建了一个自定义的.proj文件来构建我的网站项目解决方案。它似乎都正常工作并且产生了输出。但是,当我把它放到服务器上时,出现了一个错误:“/Default.aspx未预编译,无法请求”。经过一番挖掘,我发现确实aspx文件没有预编译。在msbuild的输出中,我找到了一个调用aspnet_compiler的命令:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_compiler.exe -v /WebApplication -p WebApplication\ -f -fixednames Output_PublishedWebsites\WebApplication\
当我直接运行这个命令时,一切正常生成。
我怎样才能让我的MSBuild包装器正确执行它?
我的MSBuild任务看起来像这样:
<MSBuild Projects="$(SolutionFile)"
Properties="OutDir=$(OutputRoot);
Configuration=$(AspNetConfiguration)"
Targets="Build" />