public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext) { HttpContextBase objContext = controllerContext.HttpContext; CustomerAddDeliveryAddressViewModel obj = new CustomerAddDeliveryAddressViewModel(); obj.address = new Address(); obj.deliveryAddress = new CustomerDeliveryAddress(); obj.deliveryAddress.DeliveryAddressInfo = objContext.Request.Form["DeliveryAddressInfo"]; obj.deliveryAddress.Box = Int32.Parse(objContext.Request.Form["Box"]); obj.deliveryAddress.PostalCodeNumber = Int32.Parse(objContext.Request.Form["PostalCodeNumber"]); obj.deliveryAddress.StreetName = objContext.Request.Form["StreetName"]; obj.deliveryAddress.StreetNumber = Int32.Parse(objContext.Request.Form["StreetNumber"]); obj.deliveryAddress.Town = objContext.Request.Form["Town"]; obj.deliveryAddress.CustomerId = Int32.Parse(objContext.Request.Form["CustomerId"]); return(obj); }
public ActionResult AddDeliveryAddress([ModelBinder(typeof(CustomerBinderAddNewDeliveryAddress))] CustomerAddDeliveryAddressViewModel cadavm, string[] AddressId, string returnUrl) { Customer cus = new Customer(); Address add = new Address(); CustomerDeliveryAddress cda = new CustomerDeliveryAddress(); cus = db.Customers.Find(cadavm.deliveryAddress.CustomerId); if (AddressId != null) { if (AddressId.Length > 1) { return(RedirectToAction("AddDeliveryAddress")); } if (AddressId.Length == 1) { add = db.Addresses.Find(Int32.Parse(AddressId.First())); cda.Box = add.Box; cda.CustomerId = cadavm.customer.CustomerId; cda.DeliveryAddressInfo = cadavm.deliveryAddress.DeliveryAddressInfo; cda.PostalCodeNumber = add.PostalCodeNumber; cda.StreetName = add.StreetName; cda.StreetNumber = add.StreetNumber; cda.Town = add.Town; cus.CustomerDeliveryAddress.Add(cda); db.SaveChanges(); return(Redirect(returnUrl)); } } cda = cadavm.deliveryAddress; cus.CustomerDeliveryAddress.Add(cda); db.SaveChanges(); return(Redirect(returnUrl)); }
// GET: Customers/AddDeliveryAddress/5 public ActionResult AddDeliveryAddress(int?id, int?page, string sortOrder, string searchStringTown, string searchStringPostal, string currentFilterTown, string currentFilterPostal, string returnUrl) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } if (returnUrl == null) { ViewBag.returnUrl = Request.UrlReferrer; } else { ViewBag.returnUrl = returnUrl; } ViewBag.CurrentSort = sortOrder; // hij kijkt of town en postal leeg is indien niet leeg terug reset naar pagina 1 if (searchStringTown != null || searchStringPostal != null) { page = 1; } else { searchStringTown = currentFilterTown; searchStringPostal = currentFilterPostal; } ViewBag.CurrentFilterTown = searchStringTown; ViewBag.CurrentFilterPostal = searchStringPostal; //lijst vullen met adressen om weer te geven var addressList = from a in db.Addresses select a; // zoekvelden toepassen op addresslist //zoeken op gemeente of adres if (!String.IsNullOrEmpty(searchStringTown)) { addressList = addressList.Where(s => s.Town.ToUpper().Contains(searchStringTown.ToUpper()) || s.StreetName.ToUpper().Contains(searchStringTown.ToUpper())); } // zoeken op postalcode if (!String.IsNullOrEmpty(searchStringPostal)) { int postalCode = int.Parse(searchStringPostal); addressList = addressList.Where(s => s.PostalCodeNumber == (postalCode)); } //sorting parameters ViewBag.TownSortParm = String.IsNullOrEmpty(sortOrder) ? "town_desc" : ""; ViewBag.PostalCodeSortParm = String.IsNullOrEmpty(sortOrder) ? "postal_desc" : "postal"; switch (sortOrder) { case "town_desc": addressList = addressList.OrderByDescending(s => s.Town); break; case "postal": addressList = addressList.OrderBy(s => s.PostalCodeNumber); break; case "postal_desc": addressList = addressList.OrderByDescending(s => s.PostalCodeNumber); break; default: addressList = addressList.OrderBy(s => s.Town); break; } //gesorteerde info in viewbag + paged var userDefinedInfo = db.UserDefinedSettings.Find(1); int pageSize = userDefinedInfo.DetailsResultLength; int pageNumber = (page ?? 1); ViewBag.Addressess = addressList.ToPagedList(pageNumber, pageSize); Customer customer = db.Customers.Find(id); CustomerAddDeliveryAddressViewModel cavm = new CustomerAddDeliveryAddressViewModel(); cavm.customer = customer; if (customer == null) { return(HttpNotFound()); } return(View("AddDeliveryAddress", cavm)); }