示例#1
0
        public async Task <IActionResult> Post([FromBody] CustomerViewModel customerVm)
        {
            if (customerVm == null)
            {
                return(BadRequest());
            }

            if (!ModelState.IsValid)
            {
                return(UnprocessableEntity(ModelState));
            }

            var newItem = Mapper.Map <Customer>(customerVm);

            _customerRepository.Add(newItem);
            if (!await UnitOfWork.SaveAsync())
            {
                return(StatusCode(500, "保存时出错"));
            }

            var vm = Mapper.Map <CustomerViewModel>(newItem);

            var links         = CreateLinksForCustomer(vm.Id);
            var dynamicObject = vm.ToDynamic() as IDictionary <string, object>;

            dynamicObject.Add("links", links);

            return(CreatedAtRoute("GetCustomer", new { id = dynamicObject["Id"] }, dynamicObject));
        }
示例#2
0
        public async Task <IActionResult> Post([FromBody] VehicleViewModel vehicleVm)
        {
            if (vehicleVm == null)
            {
                return(BadRequest());
            }

            if (!ModelState.IsValid)
            {
                return(UnprocessableEntity(ModelState));
            }

            var newItem = Mapper.Map <Vehicle>(vehicleVm);

            _vehicleRepository.Add(newItem);
            if (!await UnitOfWork.SaveAsync())
            {
                return(StatusCode(500, "保存时出错"));
            }

            var vm = Mapper.Map <VehicleViewModel>(newItem);

            return(CreatedAtRoute("GetVehicle", new { id = vm.Id }, CreateLinksForVehicle(vm)));
        }