Asp.net-Mvc

VS 2015:無法載入文件或程序集’System.Web.WebPages.Razor,版本 = 2.0.0.0

  • January 19, 2020

我正在執行一個包含不同項目的解決方案。但是,我正在嘗試使用 Visual Studio 2015 和框架 4.6(在 Windows 8 OS、IIS Express 上)執行一個包含 wcf 服務的項目(類庫)。但是它一直在瀏覽器中顯示此錯誤:

錯誤:

在此處輸入圖像*e 描述

我注意到 Razor 2.0 的呼叫程序集是“System.Web.Mvc”版本 4.0.0.1:

呼叫程序集:System.Web.Mvc,Version=4.0.0.1,Culture=neutral,PublicKeyToken=31bf3856ad364e35。

但是,System.Web.MVC dll在這個項目中沒有被引用,項目中的引用如下圖所示:

在此處輸入圖像描述

雖然,它沒有被引用,但它總是出現在 bin 文件夾中,即使我清除它也是如此。這可能就是它試圖呼叫“ System.Web.WebPages.Razor ”2.0 版的原因。

澄清問題的任何線索:

  1. 我在呼叫 System.web.mvc 的 Web.Config 中沒有相關程序集
<runtime>
   <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
     <dependentAssembly>
       <assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" culture="neutral" />
       <bindingRedirect oldVersion="0.0.0.0-1.5.2.14234" newVersion="1.5.2.14234" />
     </dependentAssembly>
    
     <dependentAssembly>
       <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
       <bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
     </dependentAssembly>
   </assemblyBinding>
 </runtime>
  1. 也不包含在包配置中:
<packages>
 <package id="EntityFramework" version="6.1.3" targetFramework="net46" />
 <package id="Microsoft.AspNet.Providers" version="2.0.0" targetFramework="net451" />
 <package id="Microsoft.AspNet.Providers.Core" version="2.0.0" targetFramework="net451" />
 <package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net46" />
 <package id="PostSharp" version="4.3.5-alpha" targetFramework="net46" />
 <package id="System.Web.Providers" version="1.2" targetFramework="net451" />
</packages>
  1. 不作為參考

我想知道發生了什麼事?可能另一個項目會影響它!我也嘗試使用 nugget 更新軟體包(解除安裝和重新安裝),但仍然處於相同的情況。

問題的可能原因:

我還注意到這個項目中有一個“ Gobal.asax ”文件,它使用實現“ System.Web.HttpApplication ”的“ MvcApplication ”類,這可能是問題的一個很好的原因。

任何幫助表示讚賞。

解決方案:通過 nuget manager 安裝 Microsoft.AspNet.Webpages 2.0 版第一個版本。

我將從查看程序集綁定失敗開始 - 這將向您顯示哪個程序集正在請求失敗的綁定。

有一個方便的小工具可以用來查看綁定失敗。這應該可以幫助您追踪它。

https://msdn.microsoft.com/en-us/library/e74a18c4(v=vs.71).aspx

祝你好運!

引用自:https://stackoverflow.com/questions/36320149