예제 #1
0
        public async Task <ActionResult <CarConfirmation> > PostCar(Guid carOwnerId, [FromBody] CarPostBody carToPostBody)
        {
            var newCarConfirmation = await _service.CreateCarAsync(carOwnerId, carToPostBody);

            string location = _linkGenerator.GetPathByAction("GetCarById", "Car", new { carOwnerId = newCarConfirmation.CarOwnerId, carId = newCarConfirmation.Id });

            return(Created(location, newCarConfirmation));
        }
예제 #2
0
        public async Task <CarConfirmation> CreateCarAsync(Guid carOwnerId, CarPostBody postCarBody)
        {
            Car newCar = new()
            {
                Id                  = Guid.NewGuid(),
                CarOwnerId          = carOwnerId,
                Mark                = postCarBody.Mark,
                Model               = postCarBody.Model,
                DateOfManufacturing = postCarBody.DateOfManufacturing,
                KW                  = postCarBody.KW,
                Cm3                 = postCarBody.Cm3,
                ChassisMark         = postCarBody.ChassisMark,
                EngineMark          = postCarBody.EngineMark,
                FuelType            = postCarBody.FuelType,
                CarBodyType         = postCarBody.CarBodyType
            };

            await _context.Set <Car>().AddAsync(newCar);

            await _context.SaveChangesAsync();

            _logger.LogInformation("CreateCarsAsync() Executed!");
            return(await Task.FromResult(_mapper.Map <CarConfirmation>(newCar)));
        }