public async void Update(UserDTM userDtm) { try { var config = new MapperConfiguration(cfg => cfg.CreateMap <UserDTM, User>()); var mapper = new Mapper(config); User user = mapper.Map <User>(userDtm); await Database.Users.Update(user); } catch (Exception ex) { Console.Out.WriteLine(ex.Message); } }
public static UserDTM changeToDTM(User user) { UserDTM userDtm = new UserDTM(); userDtm.Id = user.Id; userDtm.Email = user.Email; userDtm.FirstName = user.FirstName; userDtm.SecondName = user.SecondName; userDtm.PhoneMobile = user.PhoneMobile; userDtm.PhoneOffice = user.PhoneOffice; userDtm.UserPicture = user.UserPicture; userDtm.Address = user.Address; userDtm.City = user.City; userDtm.State = user.State; userDtm.ZipCode = user.ZipCode; userDtm.PlanId = user.PlanId; userDtm.IsPaymentOverdue = user.IsPaymentOverdue; userDtm.IsMale = user.IsMale; userDtm.Birthdate = user.Birthdate; if (user.Country != null) { CountryDTM country = new CountryDTM(); country.Id = user.Country.Id; country.Code = user.Country.Code; country.Name = user.Country.Name; country.Native = user.Country.Native; country.PhonePrefix = user.Country.PhonePrefix; country.Capital = user.Country.Capital; country.Currency_ = user.Country.Currency_; country.Emoji = user.Country.Emoji; country.EmojiU = user.Country.EmojiU; userDtm.Country = country; } if (user.Time_zone != null) { Time_zoneDTM tz = new Time_zoneDTM(); tz.Id = user.Time_zone.Id; tz.Zone = user.Time_zone.Zone; tz.CountryCode = user.Time_zone.CountryCode; tz.UTC_Jan_1_2020 = user.Time_zone.UTC_Jan_1_2020; tz.DST_Jul_1_2020 = user.Time_zone.DST_Jul_1_2020; userDtm.Time_zone = tz; } return(userDtm); }
public HttpResponseMessage Put([FromBody] UserDTM userDTM) { try { var originalUser = TheRepo.UsersDTM.Get(userDTM.Id); if (originalUser == null) { return(Request.CreateResponse(HttpStatusCode.NotModified, "User is not found")); } else { TheRepo.UsersDTM.Update(userDTM); return(Request.CreateResponse(HttpStatusCode.OK, userDTM)); } } catch (Exception ex) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex)); } }
public async Task <bool> Create(UserDTM userDtm) { try { User user = new User { Id = userDtm.Id, Email = userDtm.Email, FirstName = userDtm.FirstName, SecondName = userDtm.SecondName, CountryId = userDtm.CountryId, Time_ZoneId = userDtm.Time_ZoneId, Birthdate = userDtm.Birthdate, PlanId = userDtm.PlanId, City = userDtm.City }; await Database.Users.Create(user); return(true); } catch { return(false); } }
public async Task <IHttpActionResult> Register(RegisterBindingModel model) { IdentityResult result = null; if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (ModelState.IsValid) { var user = new ApplicationUser() { UserName = model.Email, Email = model.Email, FirstName = model.FirstName }; result = await UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { // генерируем токен для подтверждения регистрации var code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id); // создаем ссылку для подтверждения var callbackUrl = Url.Link("Default", new { Controller = "Account", Action = "ConfirmEmail", userId = user.Id, code = code }); // отправка письма await UserManager.SendEmailAsync(user.Id, "Подтверждение электронной почты", "Для завершения регистрации перейдите по ссылке:: <a href=\"" + callbackUrl + "\">завершить регистрацию</a>"); UserDTM newUser = new UserDTM(); newUser.Id = user.Id; newUser.FirstName = user.FirstName; newUser.Email = user.UserName; if (model.MemberPlan == 1) { await UserManager.AddToRoleAsync(user.Id, "FreeMember"); newUser.PlanId = 1; } if (model.MemberPlan == 2) { await UserManager.AddToRoleAsync(user.Id, "GoldMember"); newUser.PlanId = 2; } if (model.MemberPlan == 3) { await UserManager.AddToRoleAsync(user.Id, "PlatinumMember"); newUser.PlanId = 3; } if (model.MemberPlan == 777) { await UserManager.AddToRoleAsync(user.Id, "Admin"); newUser.PlanId = 777; } if (model.MemberPlan == 888) { await UserManager.AddToRoleAsync(user.Id, "Moderator"); newUser.PlanId = 888; } else { Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Try again!"); } await TheRepo.UsersDTM.Create(newUser); BusinessDTM busines = new BusinessDTM(); busines.Name = model.BusinessName; int businessId = await TheRepo.BusinessesDTM.Create(busines); } } //----------------------------- //DpapiDataProtectionProvider provider = new DpapiDataProtectionProvider("WebApi"); //var userStore = new UserStore<ApplicationUser>(new ApplicationDbContext()); //var userManager = new UserManager<ApplicationUser>(userStore) //{ // PasswordValidator = new PasswordValidator // { // RequiredLength = 3 // }, // UserTokenProvider = new DataProtectorTokenProvider<ApplicationUser>(provider.Create("EmailConfirmation")) //}; //var user = new ApplicationUser() //{ // UserName = model.Email, // Email = model.Email, // FirstName = model.FirstName //}; //result = userManager.Create(user, model.Password); //if (user != null) //{ // string code = userManager.GenerateEmailConfirmationToken(user.Id); // code = HttpUtility.UrlEncode(code); // try // { // var emailService = new EmailService(); // string callbackUrl = Url.Link("DefaultApi", new { controller = "Account/ConfirmEmail", userId = user.Id, code }); // string body = "<h5>Welcome " + model.Email + "! Please confirm your account by clicking <a href=\"" + callbackUrl + "\">here</h5>"; // //emailService. .GenerateEmailConfirmationBody(body, callbackUrl); // string from = ConfigurationManager.AppSettings["From"]; // string to = user.Email; // string subject = ConfigurationManager.AppSettings["EmailConfirmation"]; // IdentityMessage message = new IdentityMessage { Destination = to, Subject = "Account Confirmation", Body = body }; // await emailService.SendAsync(message); // //emailService.GenerateEmailHistoryEntry(message, user.Email, client, "Email Confirmation"); // } // catch (Exception) // { // throw; // } //} //----------------------------- return(Ok()); }