【发布时间】:2019-09-06 18:36:17
【问题描述】:
我们正在将我们的 MVC4 Web 应用程序从使用框架 4.0 和多个其他 NuGet 包的 VS2013 迁移到 VS2019。我对代码进行了分支并映射了一个新的转换位置。
我已经设法构建了所有东西。该站点使用表单身份验证。但是,当我尝试调试站点时,IPrincipal 被设置为 WidnowsIdentity(我的域帐户),这是运行 IIS Express 所必需的。就好像 IIS Express 只是对登录用户使用开发服务器设置中的 windows 身份验证一样。
我没有对这些设置进行任何更改,因此匿名身份验证和 Windows 身份验证都已启用。托管管道模式是集成的。然而我从来没有进入过登录页面,它完全绕过并将用户设置为我的域
但是,如果我打开项目 VS2013 项目,它会像往常一样工作。我知道 VS2019 为 applicationhost.config 文件创建了一个 .vs 文件夹。我弄乱了那个文件,但我仍然无法让它运行。
更新:
提供更多信息。我以前没有注意到这一点,但是在调试时我注意到由于某种原因它正试图进入我们的帐户控制器,但它正在寻找登录操作。我们没有名为 Login 的操作,但我们有 GET 和 POST LogOn。
我还检查了 web.config 文件,以确保它没有以某种方式更改并且它仍然是 ~/Account/LogOn。我已经在代码中搜索了任何名为 Login 的内容。
我什至尝试更改表单身份验证的 loginUrl 属性,但它似乎没有读取它。
【问题讨论】: