2011-07-25 161 views
31

我不知道我的機器出了什麼問題,但是我有一段時間從ASP.NET(針對所有應用程序)收到以下奇怪的錯誤。ASP.NET奇怪的編譯錯誤

Compilation Error 

Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately. 

Compiler Error Message: The compiler failed with error code -1073741502. 


Show Detailed Compiler Output: 


C:\Windows\SysWOW64\inetsrv> "C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe" /t:library /utf8output /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\75855fbd\1e953b27\assembly\dl3\2689d6b5\f0791420_961fcc01\wnvhtmlconvert.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System\v4.0_4.0.0.0__b77a5c561934e089\System.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Drawing\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Drawing.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_32\System.Web\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Web.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.Entity\v4.0_4.0.0.0__b77a5c561934e089\System.Web.Entity.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel.Web\v4.0_4.0.0.0__31bf3856ad364e35\System.ServiceModel.Web.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.IdentityModel\v4.0_4.0.0.0__b77a5c561934e089\System.IdentityModel.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\75855fbd\1e953b27\assembly\dl3\d08c81cd\4d77c01f_961fcc01\AjaxControlToolkit.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel.Activation\v4.0_4.0.0.0__31bf3856ad364e35\System.ServiceModel.Activation.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.ApplicationServices\v4.0_4.0.0.0__31bf3856ad364e35\System.Web.ApplicationServices.dll" ......AND SO ON..... 

事實:

  1. 殺工作進程解決了這個問題暫時
  2. 我甚至重新安裝了.NET框架!它沒有工作。
  3. 重新啓動IIS並不能幫助

什麼會導致這個問題?

+0

安裝的.NET Framework 4.7.1爲我工作的某些原因。 https://www.microsoft.com/en-us/download/details.aspx?id=56115 – null

回答

22

OK,天,這個問題掙扎後,我終於固定它。

  • 不受
  • 沒有通過重新安裝.NET框架ASP.NET結算溫度!

簡單!

  • 我從「本地系統」,「ApplicationPoolIdentity」改變了應用程序池標識

顯然有一個與我的本地系統權限錯誤的C#編譯器(csc.exe)無法訪問某些資源和源代碼。

爲了改變你的應用程序池的身份遵從下面給出的步驟:http://learn.iis.net/page.aspx/624/application-pool-identities/

+7

但怎麼樣的發展環境? –

+0

我們的網站在重新啓動後也出現這個問題,我相信沒有變化應用,並且之前運行的是完全正常的。 總之,應用程序池ID更新解決我們的問題 – RAY

+5

不,這並沒有在所有幫助,我有同樣的問題仍然 –

11

刪除C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\

+5

找到這個文件夾下的應用程序,這樣你就沒有要刪除所有臨時文件 –

1

如果你還在苦苦來解決這個問題,即使在所有的選項,然後嘗試找到其正在運行,並採取大量內存的應用程序。

在我的情況下,這是一個應用程序,由於一些錯誤,有超過100個實例運行,並且每個應用程序至少需要20 MB,因此大約2 GB。

我殺了幾個應用程序和內存被釋放後,我的網站重新上線。

11

我也得到了這種錯誤,但這裏解釋的問題非常不同。所以在我的情況我從臨時文件編譯器錯誤,我用不存在的命名空間,如:

using ImaginaryNamespaces; 

我確信代碼「使用ImaginaryNamespaces;」 dosn't不存在於我的解決方案中,所以我當然懷疑緩存問題。最後我發現臨時文件是configs生成的一些源文件。我的看法/ Web.Config有一條線:

<add namespace="ImaginaryNamespaces"/> 

刪除它後,它的工作。所以我建議確保配置中沒有任何可能與編譯器錯誤有關的數據。

2

如果您收到錯誤「在編譯爲請求提供服務所需的資源編譯期間發生錯誤。 編譯器錯誤消息:編譯器失敗,錯誤代碼爲255.「

嘗試終止進程」VBCSCompiler.exe「。如果您的應用程序無法編譯,VBCSCompiler.exe也可能是問題,因爲某些程序包不能轉移到bin文件夾

+0

嗨ogglas,我有我的網絡同樣的問題。錯誤僅在有時發生,並且在時間後自動解析。請問這個問題的核心是什麼?你知道嗎? –

+0

@ polach.o對不起,我不知道這個 – Ogglas

0

原因:我注意到,當我清理我的項目或清理其中一個依賴項目,然後在顯示該站點的頁面上點擊刷新幾次,錯誤。現在看來似乎試圖加載/莫名其妙跑斷/缺少DLL項目。

重命名該項目的IIS不同的東西,並用新的名稱,它加載罰款(再次提供項目建成第一OK,然後運行,否則它會導致同樣的問題)

7

提供的答案目錄中不是解決辦法。 .NET 6#的東西與我們過去的很不一樣。從處理便攜式庫到Visual Studio 2015安裝一箇舊的編譯器(花了我四個小時的時間來開發我的頭),很多變化。

長話短說:堆棧溢出問題How do I use C# 6 with a Web Site project type?

您需要安裝C#.NET編譯器(現在作爲服務運行唧唧歪歪)。 ,你需要運行的NuGet更新以獲得最新的一切(嘗試任何事情之前)。

編譯器必須對您的解決方案,從運行項目安裝(這樣你的網站或你的主要項目應用程序從啓動(如果你有多個項目))。

一旦你安裝了,然後整理你的web.config引用任何便攜式庫,並刪除binobj文件夾(以避免在我的電腦噩夢),它應該只是運行。但要耐心;在你的機器上發生的事情可能會和上面的答案一樣多。上面的大多數答案隱藏了其他問題。它可能會工作一段時間,然後繁榮:編譯器錯誤。我有幾頁工作,然後一些頁面開始失敗,因爲一些包已經開始使用可移植的庫。

+1

的根本原因我也剛剛意識到這個問題是4歲。我希望我檢查。谷歌沒有幫助我在這裏。對於2016和Visual Studio 2015,c#的新編譯器就是問題所在。 – PBo

3

在IIS管理器,在應用程序池的高級設置中,確保「過程模型→加載用戶配置文件」設置爲「真」。在我的情況下,它的工作。

2

我爬過了很多博客文章,其中包括幾個Stack   Overflow pots,而且我已經擁有了所有這些帖子在我發生此錯誤時建議的內容(請參見下文)。

  1. 我的應用程序池ApplicationPoolIdentity下運行
  2. 加載用戶配置文件設置爲True過程模型部分
  3. IIS應用程序池\默認應用對臨時ASP.NET文件完全權限的文件夾

最後,我在下面提到的博客文章中找到了一些線索。它看起來像是用同一個用戶帳戶存在爭用。因此,我將應用程序池標識更改爲LocalSystem,對於因此錯誤而失敗的應用程序 - 我的應用程序開始正常工作。

查看博客文章C# compiler or Visual Basic .Net compilers fail with error code -1073741502 when generating assemblies for your ASP.net site

注意:LocalSystem帳戶不會有太多權限。在我的情況下,我的應用程序不需要任何特殊的權限。所以我很好。如果您的應用程序需要特殊權限,請嘗試配置自定義帳戶

1

我解決了這個問題,方法是刪除項目的bin和obj文件夾的內容以及遠程服務器上bin文件夾的內容,然後重新部署。

0

在我的情況下,我只是停止並啓動應用程序池,它迴歸生活!

0

我得到了同樣的錯誤,不知從何而來。經過幾個小時的嘗試,在這裏和其他論壇上提到的所有解決方案,對我來說簡單的「清潔解決方案」和「重建」在VS2015。

0

我不得不殺死MSBuild.exe掛在進程管理器中的多個實例。

然後網站運行正常。

49

我刪除了Roslyn相關的軟件包由NuGet現在確實有效。


Roslyn相關的軟件包:

  • Microsoft.CodeDom.Providers.DotNetCompilerPlatform
  • Microsoft.Net.Compilers


PS:我的本地IIS沒有按沒有任何問題與Roslyn但我發佈項目在服務器上(這就是爲什麼我不認爲服務器支持Roslyn做),它顯示了以下錯誤消息:

編譯錯誤

說明:錯誤發生在編譯服務此請求所需的資源 期間。請查看以下具體的 錯誤細節並適當修改您的源代碼。

編譯器錯誤消息:編譯器失敗,錯誤代碼爲-532462766。

Show Detailed Compiler Output:

C:\Windows\SysWOW64\inetsrv>D:\...\wwwroot\bin\roslyn\csc.exe /t:library /utf8output /nostdlib+ /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\mscorlib.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Runtime\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Runtime.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\08433893\97359c03_e1abd201\System.Web.WebPages.Deployment.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.Extensions\v4.0_4.0.0.0__31bf3856ad364e35\System.Web.Extensions.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\2574b56e\eed229e7_dfabd201\Autofac.Integration.WebApi.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Microsoft.VisualStudio.Web.PageInspector.Loader\v4.0_1.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualStudio.Web.PageInspector.Loader.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\2da0bd13\b2333a9c_e0abd201\System.Net.Http.Formatting.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\99fd000f\fe3c7c0e_e1abd201\System.Web.WebPages.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\695a732a\7a32e84e_e2abd201\WebGrease.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Activities\v4.0_4.0.0.0__31bf3856ad364e35\System.Activities.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_32\System.EnterpriseServices\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.EnterpriseServices.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\ca091706\f1f4ae28_78afd201\Core.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\ce3c4f34\2b7b911a_e0abd201\EntityFramework.SqlServer.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_32\System.Data\v4.0_4.0.0.0__b77a5c561934e089\System.Data.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\c73494ac\8f453228_78afd201\CommonViewModels.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Microsoft.Web.Infrastructure\v4.0_1.0.0.0__31bf3856ad364e35\Microsoft.Web.Infrastructure.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\mscorlib.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.WorkflowServices\v4.0_4.0.0.0__31bf3856ad364e35\System.WorkflowServices.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\03d13810\0845500f_e1abd201\System.Web.Http.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\5cc83c73\51b7f8fe_e0abd201\System.Web.Http.WebHost.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\290d81d3\fb074b29_78afd201\Data.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel.Activation\v4.0_4.0.0.0__31bf3856ad364e35\System.ServiceModel.Activation.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\7a5d0293\283dbf3a_e0abd201\GridMvc.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\eb50e8c6\1900fa91_e0abd201\System.Web.Razor.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\a7d6ceb3\4c5f9c2c_78afd201\Web.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Xml.Linq\v4.0_4.0.0.0__b77a5c561934e089\System.Xml.Linq.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.WebPages.Deployment\v4.0_2.0.0.0__31bf3856ad364e35\System.Web.WebPages.Deployment.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.DynamicData\v4.0_4.0.0.0__31bf3856ad364e35\System.Web.DynamicData.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Xml\v4.0_4.0.0.0__b77a5c561934e089\System.Xml.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System\v4.0_4.0.0.0__b77a5c561934e089\System.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\3bd130ea\7b432ba6_e0abd201\System.Web.Optimization.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel\v4.0_4.0.0.0__b77a5c561934e089\System.ServiceModel.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_32\System.Web\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Web.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\8486430e\674206e7_dfabd201\Autofac.Integration.Mvc.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\c0d9cc06\83811806_e1abd201\System.Web.WebPages.Razor.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Configuration\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Microsoft.CSharp\v4.0_4.0.0.0__b03f5f7f11d50a3a\Microsoft.CSharp.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\8835020a\58c1c60e_e1abd201\System.Web.Helpers.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\30c33f64\00d8a820_d154d201\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.IdentityModel\v4.0_4.0.0.0__b77a5c561934e089\System.IdentityModel.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel.Web\v4.0_4.0.0.0__31bf3856ad364e35\System.ServiceModel.Web.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\6ea00d7f\02323228_78afd201\Extensions.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\f8f1e397\e9660a29_78afd201\Services.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\ff57243f\bb5e8b92_e0abd201\System.Web.Mvc.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Runtime.Serialization\v4.0_4.0.0.0__b77a5c561934e089\System.Runtime.Serialization.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.WebPages.Deployment\v4.0_1.0.0.0__31bf3856ad364e35\System.Web.WebPages.Deployment.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Drawing\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Drawing.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Data.DataSetExtensions\v4.0_4.0.0.0__b77a5c561934e089\System.Data.DataSetExtensions.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ServiceModel.Activities\v4.0_4.0.0.0__31bf3856ad364e35\System.ServiceModel.Activities.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\fd2c5d18\00ae74dd_e7acd201\Autofac.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Core\v4.0_4.0.0.0__b77a5c561934e089\System.Core.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ComponentModel.DataAnnotations\v4.0_4.0.0.0__31bf3856ad364e35\System.ComponentModel.DataAnnotations.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.ApplicationServices\v4.0_4.0.0.0__31bf3856ad364e35\System.Web.ApplicationServices.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\a44c79bb\74928fbb_e0abd201\EntityFramework.dll" /R:"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.Services\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Web.Services.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\227cd18a\6ab66d28_78afd201\Domain.dll" /R:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\assembly\dl3\8cbb60ec\00788858_b3abd201\Newtonsoft.Json.dll" /out:"C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\App_Code._bgj8eyw.dll" /debug- /optimize+ /warnaserror- /w:4 /nowarn:1659;1699;1701;612;618 /langversion:6 /nowarn:1659;1699;1701 "C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\App_Code._bgj8eyw.0.cs" "C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\a47e39f5\cc42bc06\App_Code._bgj8eyw.1.cs" 



如何卸載Roslyn包。

在解決方案資源管理器中,通過右鍵單擊Web項目,選擇Manage NuGet Packages...
轉到Installed標籤則如以上述搜索有關Roslyn包。
使用Uninstall按鈕將其刪除。

+0

男人!這回答我的問題! 'Roslyn'是真正的問題,但我不知道要刪除哪個軟件包。 –

+1

@FreddieFabregas,看看我的答案。我提到了相關的'Roslyn'軟件包! –

+3

謝謝你爲我工作。我必須刪除: Microsoft.CodeDom.Providers.DotNetCompilerPlatform 和 Microsoft.Net.Compilers – Sagi

0

我有這個錯誤消息,對我來說,解決方案是安裝點NET框架4.6,雖然我的項目有針對性4.5.2