2

我已经尝试搜索了几天,但似乎找不到足够的答案,所以我会在这里问。

我正在建立一个 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]

在此处输入图像描述

如果这太模糊,请告诉我,我可以扩展。

4

1 回答 1

0

我能够让它工作。

基本上,您只需执行具有所有就地安全功能的标准 aspnetdb.mdf。然后您只需添加一个具有相同字段的表,然后引用

MembershipUser.GetUser(Page.User.Identity.Name);

所以你自己的表将有一个带有这个 User.ProviderKey 的“masteruser”。然后,每个“子用户”的记录中都有相同的主用户 guid,因此他们都属于同一个帐户。

如果有人想要更多关于我如何让它工作的细节,我可以很高兴地提供给他们。

于 2013-11-06T22:52:03.550 回答