Iis 7 MVC 5的安全关键方法构造函数错误

Iis 7 MVC 5的安全关键方法构造函数错误,iis-7,visual-studio-2013,asp.net-mvc-5,Iis 7,Visual Studio 2013,Asp.net Mvc 5,我一直在尝试在服务器上运行MVC5Web应用程序。今天不是个好日子:-( 服务器是Windows server 2008。我安装了NET Framework 4和NET Framework 4.5。在发现添加此属性会导致站点加载之前,我花了很长时间试图通过一个非常奇怪的403访问禁止错误 <modules runAllManagedModulesForAllRequests="true"> 请确保您完全遵循将站点升级到MVC5的说明。在遵循这些说明之前,我遇到了相同的问题:。对我有

我一直在尝试在服务器上运行MVC5Web应用程序。今天不是个好日子:-(

服务器是Windows server 2008。我安装了NET Framework 4和NET Framework 4.5。在发现添加此属性会导致站点加载之前,我花了很长时间试图通过一个非常奇怪的403访问禁止错误

<modules runAllManagedModulesForAllRequests="true">

请确保您完全遵循将站点升级到MVC5的说明。在遵循这些说明之前,我遇到了相同的问题:。

对我有效的修复方法是删除System.Web.WebPages。我只在应用程序中使用,因为我在一个类中使用了TagBuilder。我可以使用字符串和string.Format,而不是现在我有了一个有效的应用程序

我在Windows 2008 R2数据中心服务器上安装了我的应用程序,遇到了相同的问题。修复程序与删除System.Web.WebPages相同

一个名字听起来很基本的DLL不起作用,可以被丢弃,这似乎很奇怪

编辑

我在构建服务器上的NUnit测试不喜欢缺少的DLL,尽管在我的计算机上本地运行它们没有显示出任何问题。解决方案是将DLL添加到我的测试项目中。我怀疑我的一些问题与TeamCity与Visual Studio 2013不完全同步有关

编辑
我找到了一个更好的解决方案,该解决方案不涉及删除System.Web.WebPages DLL。我将很快发布答案。

要解决此问题,有两个步骤:首先删除默认设置附带但我未使用的Nuget软件包。其中包括Owin、Microsoft.Owin和与Identity.T连接的各种其他软件包我需要的唯一软件包是Microsoft.AspNet.Identity.Core,因为我使用的是User.Identity.Name


第二步是排除使用这些包的文件:这些文件是App_Start文件夹中的AccountController、Startup.cs和Startup.Auth.cs。我认为如果使用较新版本的身份验证,这些文件是必要的,但由于我使用的是旧的MembershipProvider,因此我不需要这些文件。

感谢您的回复。我将现在看看那篇文章。希望里面有一些东西可能会有所帮助。我应该补充一点,我没有转换我现有的应用程序,而是创建了一个新的应用程序并复制了代码。虽然有点费劲,但至少我有一个MVC3版本可以工作。我把这个问题投了赞成票,因为它是一个很好的建议,可能会帮助其他人。
  <dependentAssembly>
    <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" />
    <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
  </dependentAssembly>