加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

将额外的信息与ASP.NET MVC成员关联

发布时间:2020-12-15 23:26:59 所属栏目:asp.Net 来源:网络整理
导读:我不知道我是否应该与MVC做任何不同的事情,但我很好奇,在使用会员资格提供者时,向ASP.NET用户帐户添加额外信息的建议方法是什么?还如何将此用法与其他实体相关联. 通常我并不打扰配置文件,并且更喜欢在简单引用USERID的表中添加额外的信息.这是ASP.NET MVC
我不知道我是否应该与MVC做任何不同的事情,但我很好奇,在使用会员资格提供者时,向ASP.NET用户帐户添加额外信息的建议方法是什么?还如何将此用法与其他实体相关联.

通常我并不打扰配置文件,并且更喜欢在简单引用USERID的表中添加额外的信息.这是ASP.NET MVC方法的好/坏/可接受,还是替代方法?

解决方法

这是一个很好的问题,我正在努力奋斗.我认为有三种基本方法;

>使用配置文件提供程序 – 这使得添加属性变得容易,但是生成用户表时很麻烦,尤其是在需要应用过滤器/搜索时. API只是不削减它.
>添加新表(或扩展现有表),然后加入此表.然后,您需要编写自己的方法来获取自定义数据.
>编写自己的会员资格提供者,扩展MembershipProvider类.

对于我最后一个项目,我使用后一种方法 – 我写了一个非常quck的SQL提供程序,只实现了创建用户所需的基本要素,身份验证和更改密码.对于其余的虚拟方法,我只是抛出一个NotImplementedException.

然后我添加了一个新的类,添加了我需要的额外属性,并使之成为可以通过传递标准MembershipUser来实例化的.这样的事情

public static CustomMember GetMember(MembershipUser user)
{
    // Get your custom member
}

这样,您可以使用标准MembershipUser进行大多数事情,但如果您需要获取有关当前用户的更多详细信息,请执行以下操作:

MembershipUser user = Membership.GetUser();
CustomMember member = CustomMember.GetMember(user);

不过,我有兴趣看看其他人民的做法.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读