Пример #1
0
        public async Task <IActionResult> CreateCityForCountry(int countryId, [FromBody] CityAddVM city)
        {
            if (city == null)
            {
                return(BadRequest());
            }

            // 验证
            if (!ModelState.IsValid)
            {
                // 验证不通过时返回 422 状态,表示请求的格式没有问题,但是语义有错误,比如实体验证错误。
                return(new UnprocessableEntityObjectResult(ModelState));
            }


            if (!await _countryRepository.CountryExistsAsync(countryId))
            {
                return(NotFound());
            }
            var cityModel = _mapper.Map <City>(city);

            _cityRepository.AddCity(countryId, cityModel);
            if (!await _unitOfWork.SaveAsync())
            {
                return(StatusCode(500, "添加数据失败"));
            }
            var cityVM = _mapper.Map <CityVM>(cityModel);

            return(CreatedAtAction(nameof(GetCity), new { countryId, cityId = cityVM.Id }, cityVM));
        }
        public IActionResult Create(CityAddVM model)
        {
            if (ModelState.IsValid)
            {
                var country = _cityRepos.GetAll().FirstOrDefault(c => c.Name == model.Name);
                if (country == null)
                {
                    var result = _cityRepos.Create
                                     (new City
                    {
                        Name       = model.Name,
                        CountryId  = model.CountryId,
                        DateCreate = DateTime.Now
                    });
                }

                return(RedirectToAction("Index"));
            }
            ModelState.AddModelError("", "Дані вказано не коректно");
            return(View(model));
        }