如何在多租户应用程序中使用asp .Net Membership。
让我们举个例子。我有一个拥有许多用户的CRM应用程序,这些用户将拥有多个客户。
现在,在这种情况下,我的单个.Net成员资格数据库如何帮助验证/授权许多其他应用程序。
请注意:我计划为每个租户保留几份应用程序二进制文件。并且所有这些将连接到具有来自aspnet_applications的唯一ApplicationId的单个CRM DB
答案 0 :(得分:0)
SimpleMembership 使用Entity Framework代码优先模型。您可以转到 Models \ AccountModels.cs 并将 UserProfile 修改为以下内容来扩展用户个人资料:
[Table("UserProfile")]
public class UserProfile
{
[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int UserId { get; set; }
public string UserName { get; set; }
public int ApplicationId { get; set; }
}
在此示例中,我添加了属性 ApplicationId ,以便您可以将用户链接到其他表或数据库中的特定应用程序。如果您想设置一对多关系,可以将 UserId 添加到其他表格,以将其链接回特定用户。
如果对UserProfile类进行任何更改,则需要删除SimpleMembership创建的任何现有数据库,以使任何更改生效。