コード例 #1
0
        private void AddToFileScandic(Hotel.Domain.Hotel hotel)
        {
            var path = _appConfiguration.ScandicHotels + $"/Scandic-{DateTime.Now:yyyy-MM-dd}.txt";

            using (var writer = new StreamWriter(path, false))
                writer.WriteLine(new ScandicSerializer().Serializer(hotel));
        }
コード例 #2
0
 public IActionResult AddHotel([FromBody] Hotel.Domain.Hotel hotel)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState));
     }
     try
     {
         if (hotel.Name.ToLower().Contains("scandic"))
         {
             AddToFileScandic(hotel);
         }
         else if (hotel.Name.ToLower().Contains("bestwestern"))
         {
             AddToFileBestwestern(hotel);
         }
         else
         {
             BadRequest($"Hotelname not recognized: {hotel.Name}");
         }
     }
     catch (Exception e)
     {
         return(BadRequest(e.ToString()));
     }
     return(Ok("Hotel added to todays list"));
 }
コード例 #3
0
        private void AddToFileBestwestern(Hotel.Domain.Hotel hotel)
        {
            var path = _appConfiguration.ScandicHotels + $"/Bestwestern-{DateTime.Now:yyyy-MM-dd}.json";
            List <Hotel.Domain.Hotel> list;

            try
            {
                list = JArray.Parse(System.IO.File.ReadAllText(path)).ToObject <List <Hotel.Domain.Hotel> >();
            }
            catch (Exception e)
            {
                list = new List <Hotel.Domain.Hotel>();
            }
            list.Add(hotel);

            using (var writer = System.IO.File.CreateText(path))
            {
                writer.Write(JsonConvert.SerializeObject(list));
            }
        }