gpt4 book ai didi

c# - asp.NET - 在服务器上获取用户名

转载 作者:行者123 更新时间:2023-11-30 19:31:15 25 4
gpt4 key购买 nike

我有一个小问题,我有一个曾经在本地完美运行的应用程序。身份验证是通过我自己构建的系统完成的,它基本上使用登录用户的用户名,但是在服务器上部署时我遇到了一个问题,因为它使用的是服务器用户名而不是试图登录的用户访问它。

这是工作的代码,但现在它不在服务器上:

    public static string GetUser()
{
WindowsIdentity curIdentity = WindowsIdentity.GetCurrent();
WindowsPrincipal myPrincipal = new WindowsPrincipal(curIdentity);
return curIdentity.Name;
}

但是我可以看到这段代码:

     <LoggedInTemplate>
<span class="alignLeft">
<asp:LoginName ID="HeadLoginName" runat="server"/>
</span>
<span class="alignRight">
<asp:LoginStatus ID="HeadLoginStatus" runat="server" LogoutAction="Redirect" LogoutText="Log Out" LogoutPageUrl="~/Logout.aspx"/>
</span>
</LoggedInTemplate>

,仍然习惯于用户而不是服务器的良好登录。我现在正在尝试获取该用户的值(value),但我在这样做时遇到了问题。

我需要做的就是把它放在一个字符串中。

loginName.Text = HeadLoginName.ToString().Substring(6);

这只返回:“.Web.UI.WebControls.LoginName”。我需要子字符串在用户之前删除域名。

最佳答案

使用

User.Identity.Name

代替 HeadLoginName 函数。

loginName.Text = User.Identity.Name;

关于c# - asp.NET - 在服务器上获取用户名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7484780/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com