public bool Register(string fname, string lname, string email, string password) { using (var work = new UnitOfWork()) { if (work.Users.GetAll().FirstOrDefault(x => x.Email == email) != null) { Logger.Error(string.Format(Resources.LogRegisterExistingEmail, email)); return false; } var hash = new Md5CryptoService(); ProfilePhoto photo = (new UsersPhotoService()).GetRandomPhoto(); var user = new User(fname, lname, email, password, photo) { HashPassword = hash.CalculateMd5Hash(password), LocationId = work.Locations.GetAll().First().Id, UserName = email, Birthdate = DateTime.Now }; work.Users.Create(user); work.Save(); List<User> users = work.Users.GetAll().ToList(); Logger.Info(string.Format(Resources.RegistrationFinished, email)); return true; } }
public static async Task<IdentityResult> Registration(SocialNetwork.Domain.DataTransferObjects.RegistrationDTO model) { using (var work = new UnitOfWork()) { List<Role> roles = new List<Role>(); roles.Add(work.Roles.FindByNameAsync("User").Result); ProfilePhoto photo = (new UsersPhotoService()).GetRandomPhoto(); var user = new User(model.FirstName, model.LastName, model.Email, photo) { LocationId = work.Locations.GetAll().First().Id, UserName = model.UserName, Birthdate = DateTime.Now, Roles = roles }; try { IdentityUserManager userManager = new IdentityUserManager(work.Users); var res = await userManager.CreateAsync(user, model.Password); work.Save(); return res; } catch (Exception) { return null; } } }