每当我尝试在控制器中检索登录的用户名时,我都会得到一个空字符串。当我第一次创建应用程序时,我选择了“Internet 应用程序”模板。我还删除了默认帐户控制器、帐户模型和 _logon 视图,因为我不需要它们。我使用的是我自己的样式,所以我也从项目中删除了 site.css。
在玩了一段时间的 web.config 之后,我发现如果我将 web.config 中的身份验证模式更改为 windows,“User.Identity.Name”实际上可以工作。如果我将其保留为“表单”身份验证模式,那么每当我尝试获取用户名时,我只会得到一个空字符串。
最近,我将身份验证模式更改为 Windows,并在我的一个控制器中使用 User.Identity.Name 来获取用户名,但是每当我运行该应用程序时,我都会在浏览器上收到错误消息,指出“localhost/Account/LogOn/ ...”没有找到。(不是针对我通常的观点)(我也没有在 Global.asax 中进行任何更改。)
如果我将身份验证模式改回表单,我的视图工作正常,但我看不到用户名(只是一个空字符串)。无论如何我可以找到解决这个问题的方法。路由有什么问题吗?我无法使用“Intranet Application”模板重新开始。
我是 MVC 的初学者,所以任何帮助将不胜感激。
谢谢