public Dictionary <string, Dictionary <string, string> > AddBus(BusAdd bus, Vendor vendor) { Dictionary <string, Dictionary <string, string> > keyValuePairs = new Dictionary <string, Dictionary <string, string> >(); Dictionary <string, string> errors = new Dictionary <string, string>(); if (bus.TotalSeat == 32 || bus.TotalSeat == 40) { } else { errors.Add("user.TotalSeat", "Total Seat count must be 32 or 40"); } if (errors.Count == 0) { Bus _bus = new Bus(); _bus.TotalSeat = bus.TotalSeat; _bus.BusType = bus.BusType; _bus.BusName = bus.BusName; _bus.PerSeatFair = bus.PerSeatFair; _bus.VendorId = vendor.VendorId; this.Insert(_bus); keyValuePairs.Add("Success", new Dictionary <string, string>() { { "Msg", "Account created successfully" } }); } else { keyValuePairs.Add("Errors", errors); } return(keyValuePairs); }
public IHttpActionResult Post(BusAdd bus) { if (ModelState.IsValid) { Dictionary <string, Dictionary <string, string> > keyValuePairs = this.busRepository.AddBus(bus, Request.Properties["vendor"] as Vendor); if (keyValuePairs.ContainsKey("Success")) { return(Created("", keyValuePairs["Success"])); } else if (keyValuePairs.ContainsKey("Errors")) { return(Content(HttpStatusCode.BadRequest, new { Errors = keyValuePairs["Errors"] })); } else { return(StatusCode(HttpStatusCode.BadRequest)); } } else { var errors = new Hashtable(); foreach (var pair in ModelState) { if (pair.Value.Errors.Count > 0) { errors[pair.Key] = pair.Value.Errors.Select(error => error.ErrorMessage).ToList().ElementAt(0); } } return(Content(HttpStatusCode.BadRequest, new { Errors = errors })); } }