C# ASP.NET MVC2和Entity Framework 4从数据库生成模型而不复制成员模型

C# ASP.NET MVC2和Entity Framework 4从数据库生成模型而不复制成员模型,c#,database,visual-studio-2010,asp.net-mvc-2,entity-framework-4,C#,Database,Visual Studio 2010,Asp.net Mvc 2,Entity Framework 4,我有一个MVC2项目,最近我将自动生成的成员/角色数据库与我的主数据库进行了整合。我有一个从主数据库生成的EF4模型,它包含一个名为Books的表。现在我已经整合了两者,我在Books和aspnet_用户之间建立了关系,以便可以查看每个用户的书籍 问题是我想更新我的EF4模型,以便它代表这种关系,但我想保留所有生成的成员代码 是否仍要这样做?解决方案是不映射成员资格表。将GUID或电子邮件地址存储在另一个表中。有关详细答案,请参见问题注释。谢谢@RPM1984和@Craig Stuntz。我以前

我有一个MVC2项目,最近我将自动生成的成员/角色数据库与我的主数据库进行了整合。我有一个从主数据库生成的EF4模型,它包含一个名为Books的表。现在我已经整合了两者,我在Books和aspnet_用户之间建立了关系,以便可以查看每个用户的书籍

问题是我想更新我的EF4模型,以便它代表这种关系,但我想保留所有生成的成员代码


是否仍要这样做?

解决方案是不映射成员资格表。将GUID或电子邮件地址存储在另一个表中。有关详细答案,请参见问题注释。谢谢@RPM1984和@Craig Stuntz。

我以前说过,现在再说一遍——不要映射会员表。使用内置的提供者api。如果你看过Rob Connery的MVC店面,他会在成员模式中将他的数据与用户的数据结合起来。除了编写自己的会员资格提供者之外,没有其他方法。Wesley,在
aspnet_用户
和“Books”之间定义FK约束是另一种映射成员表的方式,即使您没有将其放入EF模型中。如果您更改为OpenID,会发生什么情况?还是Facebook/Twitter认证?或者想要将SQL提供程序数据放在单独的数据库中?创建自己的Users表就可以了。您可以从会员API中获得一个用户ID字段。100%同意Craig。使用包含特定于域的用户信息的基本用户表,并存储成员身份GUID或电子邮件地址。电子邮件地址很好(如果可以跟踪的话),因为这是get放入表单auth cookie中的内容(大多数情况下),因此与成员资格提供商和域模型都相关。