public Tuple <Multimedia, Address, Seller> Map(SetSellerDetailsViewModel model, string userId) { var multimedia = new Multimedia { FileName = model.ProfilePhoto.FileName, Content = model.ProfilePhoto.SetContent(), Type = Enum.GetName(typeof(MultimediaType), MultimediaType.ProfilePhoto) }; var address = new Address { AddressLine1 = model.AddressLine1, AddressLine2 = model.AddressLine2, Town = model.Town, Province = model.Province, PostalCode = model.PostalCode, Country = model.Country }; var seller = new Seller { Signature = model.Signature, ApprovalStatus = model.ApprovalStatus, SellerType = model.SellerType, UserId = userId, AddressId = address.Id, MultimediaId = multimedia.Id }; return(new Tuple <Multimedia, Address, Seller>(multimedia, address, seller)); }
public async Task <ActionResult> SetDetails(SetSellerDetailsViewModel model) { var(multimedia, address, seller) = mapper.Map(model, User.Identity.GetUserId()); context.MultiMedias.Add(multimedia); context.Addresses.Add(address); context.Sellers.Add(seller); await context.SaveChangesAsync(); return(RedirectToAction("SubmitProperty", "Property")); }
public async Task <ActionResult> EditDetails(SetSellerDetailsViewModel model) { var userId = User.Identity.GetUserId(); var existingSeller = await context.Sellers.FirstOrDefaultAsync(it => it.UserId == userId); if (existingSeller == null) { ViewBag.ErrorMessage = "This seller does not exists in our database."; return(View("Error")); } var address = await context.Addresses.FirstOrDefaultAsync(it => it.Id == existingSeller.AddressId); var multimedia = await context.MultiMedias.FirstOrDefaultAsync(it => it.Id == existingSeller.MultimediaId); (multimedia, address, existingSeller) = mapper.Map(model, userId); return(RedirectToAction("GetDetails", "Seller")); }