public ActionResult Register(RegisterModel model) { if (ModelState.IsValid) { // Attempt to register the user MembershipCreateStatus createStatus; Membership.CreateUser(model.UserName, model.Password, model.Email, null, null, true, null, out createStatus); if (createStatus == MembershipCreateStatus.Success) { FormsAuthentication.SetAuthCookie(model.UserName, false /* createPersistentCookie */); Roles.AddUserToRole(model.UserName, model.Role); if (model.Role == "Tenant") { RegisterTenant(model); } if (model.Role == "Owner") { RegisterOwner(model); } if (model.Role == "Agent") { RegisterAgent(model); } if (model.Role == "Specialist") { RegisterSpecialist(model); } if (model.Role == "Provider") { RegisterProvider(model); } //Add User to the Databases return RedirectToAction("Index", model.Role); } else { ModelState.AddModelError("", ErrorCodeToString(createStatus)); } } // If we got this far, something failed, redisplay form return View(model); }
public void RegisterProvider(RegisterModel model) { var newprovider = new MaintenanceProvider { EmailAddress = model.Email }; var user = Membership.GetUser(model.UserName); if (user != null) { var providerUserKey = user.ProviderUserKey; if (providerUserKey != null) newprovider.GUID = (Guid)providerUserKey; newprovider.FirstName = model.UserName; newprovider.Photo = "./../images/dotimages/avatar-placeholder.png"; newprovider.GoogleMap = "USA"; } _db.MaintenanceProviders.Add(newprovider); _db.SaveChanges(); }