我厌倦了这个错误.我在网上搜索并尝试了所有可能的建议,我可以找到这个错误.
>删除app_code,构建,添加文件,发布. (不工作)
>删除临时的asp.net文件(不起作用)
最后,我甚至尝试了命令行并获得以下堆栈跟踪.
error ASPRUNTIME: Object reference not set to an instance of an object. [NullReferenceException]: Object reference not set to an instance of an object. at System.Web.Compilation.BuildManager.CopyPrecompiledFile(VirtualFile vfile,String destPhysicalPath) at System.Web.Compilation.BuildManager.CopyStaticFilesRecursive(VirtualDirect ory sourceVdir,String destPhysicalDir,Boolean topLevel) at System.Web.Compilation.BuildManager.CopyStaticFilesRecursive(VirtualDirect ory sourceVdir,Boolean topLevel) at System.Web.Compilation.BuildManager.PrecompileAppInternal(VirtualPath star tingVirtualDir) at System.Web.Compilation.BuildManager.PrecompileApp(VirtualPath startingVirt ualDir) at System.Web.Compilation.BuildManager.PrecompileApp(ClientBuildManagerCallba ck callback) at System.Web.Compilation.BuildManagerHost.PrecompileApp(ClientBuildManagerCa llback callback) at System.Web.Compilation.BuildManagerHost.PrecompileApp(ClientBuildManagerCa llback callback) at System.Web.Compilation.ClientBuildManager.PrecompileApplication(ClientBuil dManagerCallback callback,Boolean forceCleanBuild) at System.Web.Compilation.ClientBuildManager.PrecompileApplication(ClientBuil dManagerCallback callback) at System.Web.Compilation.Precompiler.Main(String[] args)
我使用以下命令行:
aspnet_compiler.exe -p d:\code\websites\brokerweb -v / d:\code\websites\published -f -c -errorstack -u
解决方法
当我尝试使用MSBUILD编译项目时,我发生了这个错误 – 它可以在Visual Studio中构建,甚至可以在我的本地浏览器中调试. VS中的Publish选项也有效.但命令行MSBUILD导致项目每次都出错.
我设法通过在我的网站上打开属性页,打开“MSBuild选项”选项卡,并取消选中“允许此预编译站点可更新”选项,然后点击“全部保存”,在VS 2012中修复此问题.