我以前从未在项目中使用Entity Framework,所以我不知道从哪里开始。我正在使用按原样使用ASP.Net成员资格提供程序时创建的成员资格表。
我想创建一个包含对用户的引用的对象。例如
public int Id {get;set;}
public User User{get;set} // Where User is some object relating to Membership provider User.
public string Application {get; set;}
我使用代码第一种方法来使用EF,所以我想让它基于这个对象生成表。那么我该如何配置这个以便EF能够识别我正在创建与asp.net Membership管理的用户的关系?我应该在上面的示例中使用什么类型代替'User'(什么是asp.net类型)
对不起,如果这是模糊的。我基本上只需要一个示例或解释EF如何与Asp.net成员资格提供者架构集成。
谢谢!
答案 0 :(得分:6)
如果要使用一个链接成员资格表和应用程序表的EF模型,可以使用aspnet_regsql.exe实用程序将ASP.NET成员资格表添加到现有数据库中。一些链接:
安装成员资格表后,您可以生成与成员资格模式匹配的EF代码类。我在这里发布了一个详细的演练:
Generating EF Code First model classes from an existing database
答案 1 :(得分:2)
我想说你可以创建一个“AppUser”(你自己的自定义用户对象)实体,其中相应的表具有aspnet_Membership表的“UserID”列的外键。这样,如果您需要更改或添加“AppUser”实体的属性而不是尝试更改MS表结构(这可能是一个真正的痛苦),将会更容易。您仍然可以使用类似MvcMembership入门套件DLL的内容与MVC项目中的内置MS Membership类和函数进行交互。
https://github.com/TroyGoode/MembershipStarterKit
希望这有帮助!