标题说明了一切;我们最近更新了我们的 Web 项目以使用 MVC 5,但这似乎与我们在项目中使用的其他引用不兼容。运行时,我们收到以下消息:
尝试通过安全透明方法“WebMatrix.WebData.PreApplicationStartCode.Start()”访问安全关键方法“System.Web.WebPages.Razor.WebPageRazorHost.AddGlobalImport(System.String)”失败。
异常细节说:
System.MethodAccessException:尝试通过安全透明方法“WebMatrix.WebData.PreApplicationStartCode.Start()”访问安全关键方法“System.Web.WebPages.Razor.WebPageRazorHost.AddGlobalImport(System.String)”失败。
为了尝试解决这个问题,我们做了以下工作:
- 已安装
Microsoft.AspNet.WebHelpers
- 已安装
Microsoft.AspNet.WebPages.Data
- 重新添加(和卸载/重新安装)MVC 和 WebMatrix 参考
- 重新启动 Visual Studio
我们正在使用 WebMatrix v2,这在我们的 Web.config 中被引用,如下所示:
<dependentAssembly>
<assemblyIdentity name="WebMatrix.WebData" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="WebMatrix.Data" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
</dependentAssembly>
该项目的目标是 .net v4.5.2。我们的 MVC 在我们的配置中被正确引用,而所有其他谷歌搜索的解决方案都没有为我们完成它。有人对可能出现的问题有任何想法吗?