ASP.NET MVC 5 Web.config:“FormsAuthenticationModule”或“FormsAuthentication”
好吧,这不是什么大不了的事情,但是这让我烦恼,我不能放过它。
所以我使用.NET 4.5.1和OWINauthentication使用MVC 5.1。 所以当你创build一个新的MVC 5项目时,下面的内容会自动添加到Web.config中去除表单validationhttp模块,因为在使用OWIN中间件时不再需要它:
<system.webServer> <modules> <remove name="FormsAuthenticationModule" /> </modules> </system.webServer>
现在,我们正在删除模块,这意味着它已经被添加,所以这里是在C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\web.config
注册这个http模块的条目:
<httpModules> <add name="FormsAuthentication" type="System.Web.Security.FormsAuthenticationModule" /> </httpModules>
这里是IIS 8.5的C:\Windows\System32\inetsrv\config\applicationHost.config
的条目,告诉我的应用程序使用该模块:
<system.webServer> <modules> <add name="FormsAuthentication" type="System.Web.Security.FormsAuthenticationModule" preCondition="managedHandler" /> </modules> </system.webServer>
因此,在应用程序级别自动添加到我的Webconfiguration中的名称属性为“FormsAuthenticationModule”,而两个服务器级别/ asp.net级别configuration文件中的条目使用名称属性“FormsAuthentication”。 那么这里发生了什么? 在我看来,该模块将不会被删除,因为name属性不匹配。 我只是认为这是一个错字,但是在网上search之后,每个人似乎都在应用程序web.config中使用“FormsAuthenticationModule”。 这是新版本的asp.net / iis最近的变化还是我错过了什么?
你是对的 – 这是模板中的拼写错误。
这个“打字错误”的一个主要副作用是它将使FormsAuthentication保持导致owin的loginpath被忽略,并且调用被authentication的页面到/login.aspx
- 什么是Rails3版本的errors.add_to_base?
- 解决scheme“validation失败的一个或多个实体。 有关更多详细信息,请参阅“EntityValidationErrors”属性。
- 在MVC 3中禁用客户端validation“取消”提交button
- 什么是jQuery Unobtrusivevalidation?
- 用PythonvalidationSSL证书
- 什么是ASPXAUTH cookie?
- JSF不需要立即执行就跳过Required-Validation = true
- 在Hibernate Validator 4.1+中,@NotNull,@NotEmpty和@NotBlank有什么区别?
- 在哪里运行重复检查实体