Javascript 从MVC web应用程序的MVC控制器获取用户名的代码是什么

Javascript 从MVC web应用程序的MVC控制器获取用户名的代码是什么,javascript,c#,html,model-view-controller,Javascript,C#,Html,Model View Controller,我正在尝试在发布到IIS的MVC Web应用程序中获取用户名,但它不起作用。 以下是我尝试过的三件事: (一) public string userName=System.Environment.userName (二) public string userName=System.Security.Principal.WindowsIdentity.GetCurrent().Name (三) 他认为: @Html.Label((字符串)ViewBag.Name) 在控制器中: ViewBag.N

我正在尝试在发布到IIS的MVC Web应用程序中获取用户名,但它不起作用。
以下是我尝试过的三件事:

(一)
public string userName=System.Environment.userName

(二)
public string userName=System.Security.Principal.WindowsIdentity.GetCurrent().Name

(三) 他认为:
@Html.Label((字符串)ViewBag.Name)

在控制器中:
ViewBag.Name=用户名

当我在我的机器上本地调试应用程序时,它就会工作。虽然,当我去网站时,它没有得到我的用户名,相反,它看起来像是从IIS中得到了什么?我只想在网站上获得此人的用户名,而不需要其他功能。
我添加了一张IIS身份验证的照片,我不知道这是否重要,但我确保我没有遗漏任何东西。 你能帮我做这个吗?事先非常感谢。

在控制器中,要获取用户名,可以使用以下命令:


var userName=Request.RequestContext.HttpContext.User.Identity.Name

在控制器中,要获取用户名,可以使用以下命令:


var userName=Request.RequestContext.HttpContext.User.Identity.Name

我找到了解决办法。我必须在项目属性和IIS身份验证中(1)禁用匿名身份验证,(2)启用Windows身份验证

现在,我要取回我的姓“韦伯斯特”,但我想取回NSantagata(我名字和姓氏的首字母)或Fieldaero\nicola.santagata。我怎么能这么做? 这是我的代码:

在控制器中:
var userName=Request.RequestContext.HttpContext.User.Identity.Name;
ViewBag.Name=用户名
[/code]

他认为:
@Html.Label((字符串)ViewBag.Name)

如果我使用code[code]@Request.RequestContext.HttpContext.User.Identity.Name[/code]直接从视图中执行此操作
我得到了我想要的,即Fieldaero\nicola.santagata,但我不知道如何在控制器中获得相同的结果。然后,我将使用控制器中的值来执行其他代码。非常感谢你的帮助

我找到了解决办法。我必须在项目属性和IIS身份验证中(1)禁用匿名身份验证,(2)启用Windows身份验证

现在,我要取回我的姓“韦伯斯特”,但我想取回NSantagata(我名字和姓氏的首字母)或Fieldaero\nicola.santagata。我怎么能这么做? 这是我的代码:

在控制器中:
var userName=Request.RequestContext.HttpContext.User.Identity.Name;
ViewBag.Name=用户名
[/code]

他认为:
@Html.Label((字符串)ViewBag.Name)

如果我使用code[code]@Request.RequestContext.HttpContext.User.Identity.Name[/code]直接从视图中执行此操作
我得到了我想要的,即Fieldaero\nicola.santagata,但我不知道如何在控制器中获得相同的结果。然后,我将使用控制器中的值来执行其他代码。非常感谢你的帮助

您想知道用户在您的应用程序中使用的实际名称,还是要查找在iis中运行网站的用户<控制器中的code>User.Identity.Name
通常返回用户名,该用户名用于验证userController是否具有名为User的属性,假设用户已登录,该属性将包含您想要的内容。它“在本地工作”的原因是,您尝试的方法是获取应用程序正在运行的用户,而不是访问站点的当前登录用户。如果你在本地运行,它们通常都是一样的。到目前为止,我的应用程序还没有登录名。我正在尝试获取访问该网站的人的用户名。我尝试了问题中包含的代码,但它只在调试中起作用,当我实际访问网站时,它不起作用。我是个新手,希望我能给你所需要的一切来帮助我。非常感谢您抽出时间。您想知道他在您的应用程序中使用的用户的实际姓名,还是正在寻找在iis中运行您的网站的用户<控制器中的code>User.Identity.Name
通常返回用户名,该用户名用于验证userController是否具有名为User的属性,假设用户已登录,该属性将包含您想要的内容。它“在本地工作”的原因是,您尝试的方法是获取应用程序正在运行的用户,而不是访问站点的当前登录用户。如果你在本地运行,它们通常都是一样的。到目前为止,我的应用程序还没有登录名。我正在尝试获取访问该网站的人的用户名。我尝试了问题中包含的代码,但它只在调试中起作用,当我实际访问网站时,它不起作用。我是个新手,希望我能给你所需要的一切来帮助我。非常感谢您的时间。我在控制器中添加了
ViewBag.Name=Request.RequestContext.HttpContext.User.Identity.Name
并在视图
@Html.Label((字符串)ViewBag.Name)
中查看用户名是否会填充标签,但不会填充任何内容。它在调试时工作,但在我运行网站时不工作。我还在另一个论坛上看到,在项目属性中,我应该将匿名身份验证设置为禁用,将Windows身份验证设置为启用;我不确定后者是否会产生任何影响。我在调试中获得了填充标签的用户名,但当我运行web应用时,相同的标签会添加到控制器
ViewBag.Name=Request.RequestContext.HttpContext.User.Identity.Name
并在视图
@Html.Label((字符串)ViewBag.Name)
中查看用户名是否会填充标签,但不会填充任何内容。它在调试时工作,但在我运行网站时不工作。