2013-04-23 84 views
0

我必须编辑ASP提供的登录/注册,以包含保存到数据库的自定义dropdown(“BranchID”)菜单,以便每个用户都有自己的分支。我正在使用ASP会员系统,当然它会保存到它创建的数据库ASPNETMDF。谷歌搜索网上有一些结果,但我很困惑。我知道有“用户配置文件”,我可以保存这个配置文件数据,但我不太确定的是,如果它是一个临时措施,或者它是否记录到数据库。ASP.Net中的自定义字段登录/注册?

我可以制作我自己的自定义会员系统,使用它构建它并调整它或使用用户配置文件。什么是最佳行动方案?我非常喜欢修改/编辑内置的会员制系统,并添加我需要的数据,但我仍然没有明确的答案,我应该做什么或什么是最好的。

回答

1

你有两个选择:

  1. 创建CustomMembershipProvider,如果你需要一个CustomRoleProvider,你可以通过实现.NET的MembershipProvider做到这一点。示例:http://www.codeproject.com/Articles/165159/Custom-Membership-Providers

  2. 创建一个单独的表,用于存储其他用户信息,即“BranchID”,并添加表和.NET的成员之间的one-to-one关系

这真的取决于你哪一个你选。

+0

非常感谢链接。现在读入他们:) – 2013-04-23 16:20:57

0

MembershipProvider非常容易扩展。假设分支是他们必须选择进行认证的东西?你应该能够延长身份验证做类似的事情:

public class MyCustomMembershipProvider : MembershipProvider 
{ 
/* 
.... 
*/ 
    public bool ValidateUser(string username, string password, string branch) 
    { 
     return (::ValidateUser(username, password) && MyCustomRoutine(username, branch)); 
    } 

} 
+0

这个改变会被记录在数据库中吗? AKA ...永久?我需要确定用户属于哪个分支,以便我只能显示特定于该分支的某些信息。 – 2013-04-23 16:20:10

+0

基于这个评论它听起来像你实际上把分支当作一个角色,然后用这个角色来驱动动作过滤器。你可能也想看看动作过滤器。 – SOfanatic 2013-04-23 16:24:23

+0

我已经看过角色,并且实际上和他们一起玩过。然后将查看动作过滤器! – 2013-04-23 16:27:07