public IActionResult Create([FromBody] CreatePlantRequest newPlant) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var plant = _plants.Create(newPlant); var url = Url.Action("GetById", new { id = plant.PlantId }); var responseViewModel = new PlantResponse(plant); return(Created(url, responseViewModel)); }
public Plant Create(CreatePlantRequest newPlant) { var insertResponse = _applicationDbContext.Plants.Add(new Plant { PlantName = newPlant.PlantName, Description = newPlant.Description, Vegetable = newPlant.Vegetable, Fruit = newPlant.Fruit, SowFrom = newPlant.SowFrom, SowTo = newPlant.SowTo, HarvestFrom = newPlant.HarvestFrom, HarvestTo = newPlant.HarvestTo, ImageUrl = newPlant.ImageUrl }); _applicationDbContext.SaveChanges(); return(insertResponse.Entity); }
public async Task <ActionResult <Plant> > Create(CreatePlantRequest request) { var command = new CreatePlantCommand { Id = Guid.NewGuid(), PlantSpeciesId = request.PlantSpeciesId, Name = request.Name }; var response = await mediator.Send(command); if (!response.Success) { return(BadRequest(response.ErrorMessages)); } var createdQuery = new GetPlantByIdQuery { Id = command.Id }; var createdResult = await mediator.Send(createdQuery); var createdObj = Plant.FromCore(createdResult.Data); return(CreatedAtRoute(nameof(PlantController) + "/" + nameof(Get), new { plantId = command.Id }, createdObj)); }