示例#1
0
        public async static void Seed(IRepositoryFactory repoFactory)
        {
            var users = repoFactory.GetRepository <User>("AspNetUsers");

            var allUsers = await users.All();

            if (!allUsers.Any())
            {
                var john        = new User("*****@*****.**");
                var userStore   = new MongoUserStore <User>(repoFactory);
                var userManager = new ApplicationUserManager(userStore);
                var jimi        = new User("*****@*****.**");

                var johnResult = await userManager.CreateAsync(john, "JohnsPassword");

                var jimiResult = await userManager.CreateAsync(jimi, "JimisPassword");

                await userManager.AddClaimAsync(john.Id, new Claim(ClaimTypes.Name, "*****@*****.**"));

                await userManager.AddClaimAsync(john.Id, new Claim(ClaimTypes.Role, "Admin"));

                await userManager.AddClaimAsync(jimi.Id, new Claim(ClaimTypes.Name, "*****@*****.**"));

                await userManager.AddClaimAsync(jimi.Id, new Claim(ClaimTypes.Role, "User"));
            }
        }
        public static ApplicationUserManager Create(IdentityFactoryOptions <ApplicationUserManager> options,
                                                    IOwinContext context)
        {
            var repoFactory = context.Get <IRepositoryFactory>();
            var userStore   = new MongoUserStore <User>(repoFactory);

            var applicationUserManager = new ApplicationUserManager(userStore);

            return(applicationUserManager);
        }