示例#1
0
        public IHttpActionResult PostDemoHotel(DemoHotel demoHotel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.DemoHotel.Add(demoHotel);

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateException)
            {
                if (DemoHotelExists(demoHotel.Hotel_No))
                {
                    return(Conflict());
                }
                else
                {
                    throw;
                }
            }

            return(CreatedAtRoute("DefaultApi", new { id = demoHotel.Hotel_No }, demoHotel));
        }
示例#2
0
        public IHttpActionResult PutDemoHotel(int id, DemoHotel demoHotel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != demoHotel.Hotel_No)
            {
                return(BadRequest());
            }

            db.Entry(demoHotel).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!DemoHotelExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
        public IHttpActionResult GetDemoHotel(int id)
        {
            DemoHotel demoHotel = db.DemoHotels.Find(id);
            if (demoHotel == null)
            {
                return NotFound();
            }

            return Ok(demoHotel);
        }
示例#4
0
        public Hotel Get(int id)
        {
            DemoHotel demoHotel = db.DemoHotels.Find(id);

            if (demoHotel == null)
            {
                return(null);
            }
            return(new Hotel(demoHotel.Hotel_No, demoHotel.Name, demoHotel.Address));
        }
        public IHttpActionResult DeleteDemoHotel(int id)
        {
            DemoHotel demoHotel = db.DemoHotels.Find(id);
            if (demoHotel == null)
            {
                return NotFound();
            }

            db.DemoHotels.Remove(demoHotel);
            db.SaveChanges();

            return Ok(demoHotel);
        }
示例#6
0
        public bool Delete(int id)
        {
            DemoHotel dh = db.DemoHotels.Find(id);

            if (dh == null)
            {
                return(false);
            }

            db.DemoHotels.Remove(dh);
            db.SaveChanges();

            return(true);
        }
示例#7
0
        public static Hotel Ef2MHotel(DemoHotel efHotel)
        {
            Hotel h = new Hotel();

            h.Id      = efHotel.Hotel_No;
            h.Address = efHotel.Address;
            h.Name    = efHotel.Name;

            foreach (DemoRoom efRoom in efHotel.DemoRooms)
            {
                h.Rooms.Add(Ef2MRoom(efRoom));
            }


            return(h);
        }
示例#8
0
        public IHttpActionResult GetDemoHotel(int id)
        {
            DemoHotel demoHotel = db.DemoHotels.Find(id);

            if (demoHotel == null)
            {
                return(NotFound());
            }

            var             query = db.DemoRooms.Where <DemoRoom>(n => n.Hotel_No == id);
            List <DemoRoom> drs   = new List <DemoRoom>();

            foreach (var dr in query)
            {
                drs.Add(dr.NoDeepNoParentCopy());
            }
            demoHotel.DemoRooms = drs;
            return(Ok(demoHotel));
        }
示例#9
0
        public bool Put(int id, Hotel hotel)
        {
            {
                DemoHotel demoHotel = new DemoHotel();
                demoHotel.Hotel_No        = hotel.HotelNr;
                demoHotel.Address         = hotel.Address;
                demoHotel.Name            = hotel.Name;
                db.Entry(demoHotel).State = EntityState.Modified;

                try
                {
                    db.SaveChanges();
                }
                catch (DbUpdateConcurrencyException)
                {
                    return(false);
                }

                return(true);
            }
        }
示例#10
0
        public bool Post(Hotel hotel)
        {
            DemoHotel demoHotel = new DemoHotel();

            demoHotel.Hotel_No        = hotel.HotelNr;
            demoHotel.Address         = hotel.Address;
            demoHotel.Name            = hotel.Name;
            db.Entry(demoHotel).State = EntityState.Modified;

            db.DemoHotels.Add(demoHotel);

            try
            {
                db.SaveChanges();
                return(true);
            }
            catch (DbUpdateException)
            {
                return(false);
            }
        }
示例#11
0
        static void Main(string[] args)
        {
            const string      serverUrl = "http://localhost:61172/";
            HttpClientHandler handler   = new HttpClientHandler();

            handler.UseDefaultCredentials = true;
            using (var client = new HttpClient(handler))
            {
                client.BaseAddress = new Uri(serverUrl);
                client.DefaultRequestHeaders.Clear();
                client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));

                try
                {
                    var response = client.GetAsync("api/demohotels").Result;

                    if (response.IsSuccessStatusCode)
                    {
                        var hotels = response.Content.ReadAsAsync <IEnumerable <DemoHotel> >().Result;

                        foreach (var hotel in hotels)
                        {
                            Console.WriteLine(hotel);
                        }
                    }

                    Console.WriteLine("");
                    Console.WriteLine("Get single hotel");

                    response = client.GetAsync("api/demohotels/5").Result;
                    if (response.IsSuccessStatusCode)
                    {
                        var hotel = response.Content.ReadAsAsync <DemoHotel>().Result;

                        Console.WriteLine(hotel);

                        foreach (DemoRoom item in hotel.DemoRooms)
                        {
                            Console.WriteLine(item);
                        }
                    }

                    Console.WriteLine("");
                    Console.WriteLine("Single hotel");

                    response = client.DeleteAsync("api/demohotels/42").Result;
                    if (response.IsSuccessStatusCode)
                    {
                        var hotel = response.Content.ReadAsAsync <DemoHotel>().Result;

                        Console.WriteLine(hotel);
                    }


                    DemoHotel dh = new DemoHotel()
                    {
                        Hotel_No = 42, Address = "Address 42", Name = "42nd hotel"
                    };

                    String              jsonStr = JsonConvert.SerializeObject(dh);
                    StringContent       content = new StringContent(jsonStr, Encoding.ASCII, "application/json");
                    HttpResponseMessage resp    = client.PostAsync("api/demohotels", content).Result;

                    /*if (resp.IsSuccessStatusCode)
                     * {
                     *
                     *  ok = true;
                     * }
                     * else
                     * {
                     *  ok = false;
                     * }*/



                    //DemoHotel dh =new DemoHotel() { Hotel_No = 42, Address = "Address 42", Name = "42nd hotel" };
                    //var responsex = client.PostAsync<DemoHotel>("api/DemoHotels", dh);

                    /*Console.WriteLine("");
                     * Console.WriteLine("Single hotel");
                     *
                     * response = client.DeleteAsync("api/demohotels/5").Result;
                     * if (response.IsSuccessStatusCode)
                     * {
                     *  var hotel = response.Content.ReadAsAsync<DemoHotel>().Result;
                     *
                     *  Console.WriteLine(hotel);
                     *
                     * }*/
                }
                catch (Exception)
                {
                }
            }

            Console.ReadLine();
        }
示例#12
0
        static void Main(string[] args)
        {
            const string      serverUrl = "http://localhost:61172/";
            HttpClientHandler handler   = new HttpClientHandler();

            handler.UseDefaultCredentials = true;

            using (var client = new HttpClient(handler))
            {
                client.BaseAddress = new Uri(serverUrl);
                client.DefaultRequestHeaders.Clear();
                client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));

                try
                {
                    var response = client.GetAsync("api/demohotels").Result;

                    if (response.IsSuccessStatusCode)
                    {
                        string res    = response.Content.ReadAsStringAsync().Result;
                        var    hotels = JsonConvert.DeserializeObject <List <DemoHotel> >(res);
                        foreach (var hotel in hotels)
                        {
                            Console.WriteLine(hotel);
                        }
                    }

                    response = client.GetAsync("api/demohotels/5").Result;
                    if (response.IsSuccessStatusCode)
                    {
                        string res   = response.Content.ReadAsStringAsync().Result;
                        var    hotel = JsonConvert.DeserializeObject <DemoHotel>(res);
                        Console.WriteLine("");
                        Console.WriteLine("Get single hotel:");
                        Console.WriteLine(hotel);
                        Console.WriteLine("Rooms:");
                        foreach (DemoRoom dr in hotel.DemoRooms)
                        {
                            Console.WriteLine(dr);
                        }
                    }

                    response = client.DeleteAsync("api/demohotels/42").Result;
                    if (response.IsSuccessStatusCode)
                    {
                        var res   = response.Content.ReadAsStringAsync().Result;
                        var hotel = JsonConvert.DeserializeObject <DemoHotel>(res);
                        Console.WriteLine("");
                        Console.WriteLine("Delete single hotel:");
                        Console.WriteLine(hotel);
                    }

                    DemoHotel dh = new DemoHotel()
                    {
                        Hotel_No = 42, Address = "Address 42", Name = "42nd hotel"
                    };
                    String        jsonStr = JsonConvert.SerializeObject(dh);
                    StringContent content = new StringContent(jsonStr, Encoding.ASCII, "application/json");
                    response = client.PostAsync("api/demohotels", content).Result;
                    if (response.IsSuccessStatusCode)
                    {
                        var res   = response.Content.ReadAsStringAsync().Result;
                        var hotel = JsonConvert.DeserializeObject <DemoHotel>(res);
                        Console.WriteLine("");
                        Console.WriteLine("Create single hotel:");
                        Console.WriteLine(hotel);
                    }
                    else
                    {
                        Console.WriteLine("Failed to create single hotel");
                    }

                    dh = new DemoHotel()
                    {
                        Hotel_No = 42, Address = "Address 42 (update)", Name = "42nd hotel (update)"
                    };
                    jsonStr  = JsonConvert.SerializeObject(dh);
                    content  = new StringContent(jsonStr, Encoding.ASCII, "application/json");
                    response = client.PutAsync("api/demohotels/42", content).Result;
                    if (response.IsSuccessStatusCode)
                    {
                        Console.WriteLine("Updated single hotel");
                    }
                    else
                    {
                        Console.WriteLine("Failed to update single hotel");
                    }
                }
                catch (Exception)
                {
                }
            }

            Console.ReadLine();
        }