ASP.Net 成员资格中的自定义用户属性/方法

发布于 2024-10-04 18:54:28 字数 461 浏览 3 评论 0原文

我想向 ASP.Net User 对象添加一些自定义实例属性。例如,我想记录每个用户的登录并具有如下内容:User.LoginTimes或计算用户配置文件的完成百分比并能够访问它,例如:User.ProfileInfoPercentage code> 等。

现在我想知道执行此操作的最佳方法是什么?

  1. 忘记用户实例? (例如,使用 userid 和 ProfilePercentage 信息定义数据库表,并从配置文件中检索数据,例如:DB.GetProfilePercentage(Context.Current.User.UserID)

  2. 覆盖 ASP.Net User 类并添加我自己的功能。

  3. 对用户类使用扩展方法。

  4. 还有我不知道的其他方式吗?

I'd like to add some custom instance properties to an ASP.Net User object. for example, I'd like to log every user's login and have something like: User.LoginTimes or calculate the User Profile's Completion percentage and be able to access it like: User.ProfileInfoPercentage, etc.

Now What I'd like to know is what would be the best approach to do this?

  1. Forget about user instances? (e.g. define a database table with userid and ProfilePercentage info and retrieve data from profile like: DB.GetProfilePercentage(Context.Current.User.UserID) )

  2. Override the ASP.Net User class and add my own functionalities.

  3. Use Extension methods for the user class.

  4. Any other way that I'm not aware of?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

灵芸 2024-10-11 18:54:28

如果您需要,最简单的方法可能是使用 Asp .Net Profile仅少量数据。您可以使用提供的 SqlProfileProvider 类通过 .NET Framework,或者您可以通过实现 System.Web.Profile.ProfileProvider

The easiest way may be to use Asp .Net Profile if you will need only small amounts of data. You could use the SqlProfileProvider class that is provided by .NET Framework or you can create custom providers that fits your need by implementing System.Web.Profile.ProfileProvider.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文