EF种子方法不保存自定义标识用户

时间:2015-05-05 02:14:47

标签: entity-framework asp.net-web-api asp.net-identity

使用此Tutorial我尝试在我的网络API应用程序中实现身份系统,因此我自定义了UserIdentityUserManager以及EF的Seed方法,尝试生成样本数据像这样:

var manager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(new MedicalContext()));            
        var appUsers = new List<ApplicationUser>
        {
            new ApplicationUser{FirstName="admin",LastName="admin",UserName="admin",Email = "taiseer.joudeh@gmail.com",EmailConfirmed = true,DivisionID=1,Division=divisions[0],PhoneNumber="876543"},
            new ApplicationUser{FirstName="Mahdi",LastName="Mahdavi",UserName="mahdi",Email = "LKJHGF.joudeh@gmail.com",EmailConfirmed = true,DivisionID=0,Division=divisions[1],PhoneNumber="98765434567"}
        };
        var adminresult = manager.Create(appUsers[0], "admin");

用于密码如果我使用admin密码用户创建faild,因为使用少于6个字符的密码和我的Seed方法运行的其余部分。但是当使用正确传递时,我的应用程序陷入Create UserManager Methode Seed并且没有任何异常sudo ln -s /dev/ttys000 /dev/gps0 的其余部分无法运行。(它似乎陷入了循环或某事)

1 个答案:

答案 0 :(得分:0)

最后我找到了......我应该替换它:

var manager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(new MedicalContext()));

用这个:

var store = new UserStore<ApplicationUser>(context);
var manager = new UserManager(store);