gpt4 book ai didi

.net - Membership.GetUser().用户名; (.net 4, mvc 3)

转载 作者:行者123 更新时间:2023-12-01 06:50:34 24 4
gpt4 key购买 nike

我使用直接的 .net 身份验证将用户登录到 .net:

if ( Membership.ValidateUser( user, passwd ) )

工作正常。紧接着,我尝试获取用户名:

Membership.GetUser().UserName

有时这会返回一个无效的对象。有时不是。我似乎无法检测到哪个是哪个的模式。

例如,用户以“root”/“password”身份在系统中以有效角色登录。ValidateUser() 调用成功,但 Membership.GetUser().UserName 返回无效对象。2 秒后,再次执行完全相同的操作,验证和 GetUser() 都成功。

有什么想法吗?


.. 编辑 1 ..这是我使用用户名的方式:

Roles.GetRolesForUser( Membership.GetUser().UserName ); 

当我换入 System.Environment.UserName 时,角色列表返回为空。

如果我保持原样,并使用“true”作为我的第二个参数来设置身份验证 cookie,它可以正常工作。

FormsAuthentication.SetAuthCookie( user, true );

如果我使用 HttpContext.Current.User.Identity.Name,则角色列表可以将 auth cookie 设置为 true 或 false。

现在,我了解有关性能的问题。这对我很重要。但我还需要确保应用程序正常运行。

最佳答案

为什么不能用

HttpContext.Current.User.Identity.Name

?

关于.net - Membership.GetUser().用户名; (.net 4, mvc 3),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7557614/

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