ASP MySQLRoleProvider将角色绑定到用户

时间:2014-10-10 20:08:10

标签: mysql asp.net sqlmembershipprovider sqlroleprovider

我想使用aspnet的mysql角色提供程序。我已使用属性userTableName =“user”为用户设置了自定义表。现在的问题是,当我将用户分配给角色时,MYSQLRolesprovider会在表“my_aspnet_usersinroles”和“my_aspnet_users”中创建一个条目。我想指定用于指定角色的表应该是“用户”表。我怎么做?我是否需要编写自定义角色提供程序?有没有我可以调整以进行关联的设置?或者我只是使用整个系统错了?感谢

2 个答案:

答案 0 :(得分:0)

您需要为用户及其角色使用单独的表。通常,它总共有三个,一个用于用户,一个用于角色,一个用于将用户与一个或多个角色绑定。 usersinroles表允许一对多关系,因此您的用户可以拥有多个角色。此外,良好的数据库设计将决定这一点,以及用户表应该只包含与用户本身直接相关的工件。

答案 1 :(得分:0)

  

指定用于指定角色的表应该是" user"   表

如果您希望会员提供商使用您的用户表,您需要实施自定义成员资格提供程序

自定义成员资格提供程序需要大量工作,尤其是如果您不熟悉成员资格提供程序和提供程序模型。

替代方法

OR

  • 在User表中创建UserId作为PrimaryKey以及ForeignKey,如下所示。 (这种方法的一个缺点是你只能在新的应用程序中使用;你不能在现有的数据库中实现。)

enter image description here