【发布时间】:2014-02-10 18:38:39
【问题描述】:
我已经尝试搜索了几天,但似乎找不到合适的答案,所以我会在这里问。
我正在建立一个 asp.net 会员网站。
我想做的是:
允许用户创建帐户 - 比如说 UserA 然后我想允许 UserA 创建绑定到他的帐户的“子帐户”,但具有不同的角色以及不同的登录名(我将使用电子邮件地址作为登录名)
UserA 将是各种帐户管理员。 UserA 的子帐户将比 UserA 更少“管理”,但他们写入我的数据库(实体框架)的任何数据仍将绑定到主 UserA 帐户,该帐户将通过 Membership.GetUser() API 调用引用到我的表。
所以 2 个问题:
1) 我将如何使用 DB First 引用我的 EntityDataModel 中的成员表(我已经运行了 aspnet_regsql.exe)
2) 我需要如何让 UserA 创建他自己的子用户?
这是我的自定义表格的图片:
[MasterAccountUser]
MasterAccountId = aspnet_Membership.UserId
AccountNumber = autoincrement number
[UserAccount] - subaccount of [MasterUserAccount]
AccountId = aspnet_Membership.UserId (if I have to have each user create their own)
MasterAccountId = aspnet_Membership.UserId (but the same one as the [MasterAccountUser]
如果这太模糊,请告诉我,我可以扩展。
【问题讨论】:
-
ASP.NET 成员资格是为特定的域实体架构设计的 - 您提出的内容不适用于现有框架。我建议你完全自己实现这个系统,不要使用 Membership 层。
-
当然我应该能够在我自己的自定义数据库表中做某种“鉴别器”,这样任何发布更新/编辑的用户仍然只适用于同一个帐户,对吧?因此,我只需要允许每个用户都有自己的登录,但是任何帐户更新仍然适用于相同的 MasterAccountId?
标签: asp.net entity-framework sqlmembershipprovider