public IHttpActionResult Post(PostFlightRootObject _model, string user, string pass) { if (!ApiSecurity.Login(user, pass)) { return(Unauthorized()); } try { using (SunExpressEntities context = new SunExpressEntities()) { var pFList = _model.PostFlightData.PostFlight; foreach (var item in pFList) { var postFlight = new Orm.PostFlight { AircraftRegistrationNo = item.AircraftRegistrationNo, Airline = item.Airline, ArrivalTime = item.ArrivalTime, DepartureTime = item.DepartureTime, DestinationAirport = item.DestinationAirport, FlightDate = DateToOLEFormat(item.FlightDate), FlightNum = item.FlightNum, OriginatingAirport = item.OriginatingAirport, PassengerCount = Convert.ToInt32(item.PassengerCount), }; context.PostFlight.Add(postFlight); context.SaveChanges(); int pFID = postFlight.PostFlightID; if (item.Crews.CrewId.Count > 0) { foreach (var crew in item.Crews.CrewId) { var postFlightCrew = new PostFlightCrew(); postFlightCrew.CrewID = crew; postFlightCrew.PostFlightID = pFID; context.PostFlightCrew.Add(postFlightCrew); } } context.SaveChanges(); } } return(Ok("Saved Successfully")); //return Json("SavedSuccesfully"); } catch (Exception ex) { return(BadRequest($" {ex.Message}, Error: Not Saved!")); } }
/// <summary> /// List halinde bir veya birden fazla PostFlight datası iletir. /// </summary> /// <param name="client"></param> private static void PostFlight_Post(HttpClient client) { PostFlightData postFlightData = new PostFlightData() { PostFlight = new List <PostFlight>() { new PostFlight() { FlightNum = 654, OriginatingAirport = "ATH", DestinationAirport = "DUS", Airline = "SXS", FlightDate = "2019-09-02Z", PassengerCount = 188, DepartureTime = new TimeSpan(06, 00, 00), ArrivalTime = new TimeSpan(08, 00, 00), AircraftRegistrationNo = "TC-SOA", Crews = new Crews { CrewID = new List <string> { "000111", "000112", "000113" } } }, //new PostFlight() //{ //}, } }; PostFlightRootObject root = new PostFlightRootObject(); root.PostFlightData = postFlightData; ///StructureCheck ///string jsonContent = JsonConvert.SerializeObject(root); string apiQuery = ($"/api/PostFlight/Post?user={username}&pass={password}"); Uri url = new Uri(client.BaseAddress + apiQuery); var postTask = client.PostAsJsonAsync(url, root); postTask.Wait(); var result = postTask.Result; var innerMsg = result.Content.ReadAsStringAsync().Result; Console.WriteLine($"{(Int32)result.StatusCode}, {result.ReasonPhrase},{innerMsg}"); }