public IHttpActionResult Post(TouristSiteRequestModel touristSite)
        {
            if (!this.ModelState.IsValid)
            {
                return this.BadRequest(this.ModelState);
            }

            var touristSiteToAdd = new TouristSite
            {
                Name = touristSite.Name,
                Description = touristSite.Description,
                CityId = touristSite.CityId
            };

            this.data.TouristSites.Add(touristSiteToAdd);
            data.SaveChanges();

            return this.Ok();
        }
        public IHttpActionResult Put(int id, TouristSiteRequestModel touristSiteImput)
        {
            var touristSite = this.data
                  .TouristSites
                  .All()
                  .Where(t => t.TouristSiteId == id)
                  .FirstOrDefault();

            if (touristSite == null)
            {
                return this.NotFound();
            }

            touristSite.Name = touristSiteImput.Name;
            touristSite.Description = touristSiteImput.Description;
            touristSite.CityId = touristSiteImput.CityId;

            this.data.TouristSites.Update(touristSite);
            data.SaveChanges();

            return this.Ok(touristSite);
        }
        public IHttpActionResult AddTouristSite(TouristSiteRequestModel model)
        {
            var result = this.touristSites.AddTouristSite(
                model.Name,
                model.Description,
                model.Address,
                model.Latitude,
                model.Longitude,
                model.ParentTouristSiteId);

            var mapper = AutoMapperConfig.MapperConfig.CreateMapper();

            var mappedResult = mapper.Map<SimpleTouristSiteResponseModel>(result);

            return this.Json(mappedResult);
        }