【问题标题】:Where is the default authentication route configured in ASP.NET MVC?ASP.NET MVC 中配置的默认身份验证路由在哪里?
【发布时间】:2011-09-21 18:41:05
【问题描述】:

我有一个旧的基于 WebForms 的 ASP.NET 应用程序,我已升级到 ASP.NET 4.0,我想添加一些使用 MVC 的站点部分。我已成功完成此操作,但问题是我想共享旧的登录页面。

我使用指令here 来集成MVC。

网站的两个部分都使用 SqlMemberbershipProvider,但即使我的 web.config 配置为将未经身份验证的请求路由到我的“~/Login.aspx”页面,它们现在也被踢到了“Accounts/Login”。

这是我的网络配置身份验证条目:

<authentication mode="Forms">
  <forms loginUrl="login.aspx" name=".ASPXFORMSAUTH" />
</authentication>

它现在在 MVC 管道中的哪个位置覆盖它以强制它进入“帐户/登录”。这只是 MVC 使用的“约定”吗?结果是无论目标页面/路由是什么,我仍然想将未经身份验证的请求重定向到 Login.aspx。

迈克

【问题讨论】:

    标签: asp.net asp.net-mvc authentication


    【解决方案1】:

    那是known bug。您可以尝试将以下loginUrl 应用密钥添加到您的 web.config:

    <appSettings>
        <add key="loginUrl" value="~/login.aspx" />
    <appSettings>
    

    【讨论】:

    • 感谢您的链接。当我决定休息一下并发布到 SO 时,我对 Reflector 中的 System.Web.Mvc 深有感触。可能又救了我几个小时。
    猜你喜欢
    • 1970-01-01
    • 2019-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-01
    • 2010-11-01
    相关资源
    最近更新 更多