public async Task <ActionResult> Edit([Bind(Include = "Id,Name,DateOfBirth,Gender,Category,HouseNumber,AddressLine1")] CustomerViewModel customerViewModel) { if (ModelState.IsValid) { using (var db = new NovaAdminContext()) { Customer entity = await db.Customers.Include(customer => customer.Address).FirstOrDefaultAsync(c => c.Id == customerViewModel.Id); if (entity == null) { string errorMessage = string.Format("Cannot update record with OrderID:{0} as it's not available.", customerViewModel.Id); ModelState.AddModelError("", errorMessage); } else { CustomerViewModelCustomerMapper.MapCustomerForUpdate(customerViewModel, entity, entity.Address); db.Customers.Attach(entity); db.Entry(entity).State = EntityState.Modified; db.SaveChangesAsync(); return(RedirectToAction("Index")); } } } return(View(customerViewModel)); }
public ActionResult Customers_Update([DataSourceRequest] DataSourceRequest request, CustomerViewModel customerViewModel) { db.DisableAllFilters(); if (ModelState.IsValid) { using (var db = new NovaAdminContext()) { Customer entity = db.Customers.Include(customer => customer.Address).FirstOrDefault(c => c.Id == customerViewModel.Id); if (entity == null) { string errorMessage = string.Format("Cannot update record with OrderID:{0} as it's not available.", customerViewModel.Id); ModelState.AddModelError("", errorMessage); } else { CustomerViewModelCustomerMapper.MapCustomerForUpdate(customerViewModel, entity, entity.Address); db.Customers.Attach(entity); db.Entry(entity).State = EntityState.Modified; db.SaveChanges(); } } } return(Json(new[] { customerViewModel }.ToDataSourceResult(request, ModelState))); }
public async Task <ActionResult> Create([Bind(Include = "Id,Name,DateOfBirth,Gender,Category,HouseNumber,AddressLine1")] CustomerViewModel customerViewModel) { if (ModelState.IsValid) { db.Customers.Add(CustomerViewModelCustomerMapper.MapCustomerForCreate(customerViewModel)); await db.SaveChangesAsync(); return(RedirectToAction("Index")); } return(View(customerViewModel)); }
// GET: Customers/Delete/5 public async Task <ActionResult> Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Customer customer = await db.Customers.FindAsync(id); if (customer == null) { return(HttpNotFound()); } return(View(CustomerViewModelCustomerMapper.GetCustomerViewModel(customer))); }
public ActionResult Customers_Create([DataSourceRequest] DataSourceRequest request, CustomerViewModel customerViewModel) { if (ModelState.IsValid) { using (var db = new NovaAdminContext()) { var entity = CustomerViewModelCustomerMapper.MapCustomerForCreate(customerViewModel); db.Customers.Add(entity); db.SaveChanges(); customerViewModel.Id = entity.Id; customerViewModel.AddressId = entity.AddressId; } } return(Json(new[] { customerViewModel }.ToDataSourceResult(request, ModelState))); }
// GET: Customers/Details/5 public async Task <ActionResult> Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Customer customer = await db.Customers.Include(c => c.Address.State.Country).FirstAsync(x => x.Id == id); CustomerViewModel customerDetailsViewModel = CustomerViewModelCustomerMapper.GetCustomerViewModel(customer); if (customerDetailsViewModel == null) { return(HttpNotFound()); } return(View(customerDetailsViewModel)); }
private IQueryable <CustomerViewModel> GetAllCustomersViewModels() { return (db.Customers.Include(c => c.Address.State.Country) .Select(customer => CustomerViewModelCustomerMapper.GetCustomerViewModel(customer))); }