示例#1
0
        public bool SeedRoles(IAddNewRole addNewRole)
        {
            var rolesInDb = 0;

            foreach (var role in roles)
            {
                var roleInDb = getRoleByName.Invoke(role.Name);

                if (roleInDb == null || roleInDb.Id == Guid.Empty)
                {
                    var roleId = addNewRole.Invoke(role);

                    if (roleId == Guid.Empty)
                    {
                        continue;
                    }

                    role.Id = roleId;
                    rolesInDb++;
                }
                else
                {
                    role.Id = roleInDb.Id;
                    rolesInDb++;
                }
            }

            return(roles.Count == rolesInDb);
        }
示例#2
0
 public DbContextSeeder(IAddNewUser addNewUser,
                        IConfirmUserEmailByToken confirmUserEmailByToken,
                        IAddNewDomain addNewDomain,
                        IGetDomainByName getDomainByName,
                        ISetDomainOwner setDomainOwner,
                        IAddNewRole addNewRole,
                        IGetRoleByName getRoleByName,
                        IAddUserToDomain addUserToDomain)
 {
     this.addNewUser              = addNewUser;
     this.addNewDomain            = addNewDomain;
     this.confirmUserEmailByToken = confirmUserEmailByToken;
     this.getDomainByName         = getDomainByName;
     this.setDomainOwner          = setDomainOwner;
     this.addNewRole              = addNewRole;
     this.getRoleByName           = getRoleByName;
     this.addUserToDomain         = addUserToDomain;
 }