public ServiceResult <Usuario> Create(CreateUsuarioDto createUsuario) { ServiceResult <Usuario> result; try { IdentityResult idenityResult = null; Usuario usuario = null; var user = new BitUser { UserName = createUsuario.Email, Email = createUsuario.Email, EmailConfirmed = createUsuario.EmailConfirmed }; //adding roles if (createUsuario.RolesIds.Length > 0) { foreach (var roleId in createUsuario.RolesIds) { user.Roles.Add(new BitUserRole { RoleId = roleId }); } } var securityContext = new BitSecurityContext(); BitUserManager userManager = new BitUserManager(new BitUserStore(securityContext)); using (var scope = new TransactionScope(TransactionScopeOption.Required)) { idenityResult = userManager.Create(user, createUsuario.Password); if (idenityResult.Succeeded) { usuario = new Usuario { Id = user.Id, Email = user.Email }; _usuarioRepository.Insert(usuario); _context.SaveChanges(); } else { result = new ServiceErrorResult <Usuario>(new OperationError(ErrorType.Validation, string.Join(",", idenityResult.Errors))); } scope.Complete(); } result = new ServiceSucceedResult <Usuario>(usuario); } catch (Exception ex) { OperationError error = new OperationError(ErrorType.Exception, "No se realizó la inserción", ex); result = new ServiceErrorResult <Usuario>(ErrorType.Exception, "No se insertó", ex); } return(result); }
public ConfiguracionSistema Update(string key, string value) { var conf = _confRepository.Find(key); conf.Valor = value; _confRepository.Update(conf); _context.SaveChanges(); return(conf); }