在网站中,我需要集成成员(member)资格和身份验证。所以我想使用 ASP.NET 成员(member)资格的功能,但我还有其他自定义的东西,这是“用户”必须做的。
所以我正拿着铅笔和纸坐在这里,为我的域模型画线...我怎样才能最好地利用 ASP.Net 成员(member)资格,同时扩展它来满足我的需求?
我应该创建一个从 MembershipUser 继承的类并使用我自己的属性和方法扩展它(并将其保存在单独的表中)。或者我应该让 MembershipUser 成为我的自定义用户/客户端对象的属性吗?
什么是一个好的、可靠的方法来做到这一点?
最佳答案
我想了一下,有两种看起来合适的方法(当然还有更多方法可以使其发挥作用)。
自定义成员(member)提供商
您将成员(member)资格提供商更改为使用您自己的,并使用您的用户对象来存储所有信息。
这个问题的问题在于它涉及到对 Asp.Net 已经很好处理的事情的大量重新实现。好处是您有一个包含所有详细信息的 User 对象。
从成员(member)用户到您的用户的链接
使用此方法,您将使用原始的成员(member)资格提供程序来处理用户名和密码,但您可以通过使用服务(例如,使用用户名)将您自己的 User 对象与此对象链接起来。
设置非常简单,您只需创建一个可以像这样使用的服务:
string userName = "Jon Skeet";
User user = new UserManagementServices().GetUserByUserName(userName);
关于asp.net - 如何在我的域模型中实现 ASP.NET 成员资格提供程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/811137/