我正在运行包含不同项目的解决方案.但是,我正在尝试使用Visual Studio 2015和框架4.6(在
Windows 8操作系统,IIS Express上)运行包含wcf服务的项目(类库).但是它在浏览器中不断显示此错误:
错误:
我注意到Razor 2.0的调用程序集是“System.Web.Mvc”版本4.0.0.1:
Calling assembly : System.Web.Mvc,Version=4.0.0.1,Culture=neutral,
PublicKeyToken=31bf3856ad364e35.
但是,此项目中未引用System.Web.MVC dll,项目中的引用位于下图中:
虽然它没有被引用,但它总是出现在bin文件夹中,即使我清除它.也许这就是为什么它试图调用“System.Web.WebPages.Razor”版本2.0.
澄清问题的任何线索:
>我在调用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>
>也不包含在包配置中:
<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>
>不包括在内作为参考
我想知道最近发生了什么?可能另一个项目会影响它!
此外,我已尝试使用nugget更新软件包(卸载并重新安装),但仍处于相同的情况.
问题的可能原因:
我还注意到这个项目中有一个“Gobal.asax”文件,该文件使用“MvcApplication”类来实现“System.Web.HttpApplication”,这可能是问题的一个很好的原因.
任何帮助表示赞赏.
解决方法
解决方案:通过nuget manager安装Microsoft.AspNet.Webpages第一版2.0版.