gpt4 book ai didi

asp.net-mvc - 像 Stack Overflow 这样的网站如何在 ASP.NET MVC 中传递用户信息?

转载 作者:行者123 更新时间:2023-12-05 00:43:41 24 4
gpt4 key购买 nike

基本上,我使用 OpenId 登录我的网站,这与我假设的非常相似。当我取回信息时,我将其放入数据库并创建我的“注册用户”。我设置了我的 AuthCookie:

FormsAuthentication.SetAuthCookie(user.Profile.MyProfile.DisplayName, false);

然后我可以使用它作为用户名。但是,我想传入整个对象,而不仅仅是显示名称的字符串。所以我的问题是:

SO是如何做到的?

他们是否扩展/覆盖 SetAuthCookie(string, bool)接受用户对象的方法,即 SetAuthCookie(User(object), bool) .

什么是持久化 User 对象的最佳方法,以便在我的 Web 应用程序的每个页面上我的 UserControl 都可以使用它?

提前致谢!

最佳答案

您可以通过 implementing 实现此行为您的定制Membership Provider ,或扩展现有的。提供程序基于 key (或仅按用户名)存储用户信息,并提供对 MembershipUser 的访问权限。类,你可以随心所欲地扩展它。所以当你调用FormsAuthentication.SetAuthCookie(...) ,您基本上设置了用户 key ,可以作为提供者访问。

当您调用 Membership.GetUser() ,成员基础结构将调用底层提供者并调用它的GetUser(...)方法为其提供当前用户的 key 。因此,您将收到当前的用户对象。

关于asp.net-mvc - 像 Stack Overflow 这样的网站如何在 ASP.NET MVC 中传递用户信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/779621/

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