public MenuItemDTO CreateMenuItem(MenuItemToCreateDTO menuItemToCreateDTO) { using (var db = new sakilaContext()) { Menu menuToCreate = new Menu(); menuToCreate.Description = menuItemToCreateDTO.description; menuToCreate.Menutype = menuItemToCreateDTO.menutype; menuToCreate.Price = menuItemToCreateDTO.price; menuToCreate.Title = menuItemToCreateDTO.title; if (menuItemToCreateDTO.imageid != null) { menuToCreate.Imageid = (long)menuItemToCreateDTO.imageid; } else { menuToCreate.Imageid = 1; } db.Menu.Add(menuToCreate); db.SaveChanges(); MenuItemDTO menuItemDTOToReturn = new MenuItemDTO(); menuItemDTOToReturn.description = menuToCreate.Description; menuItemDTOToReturn.imageUrl = db.Image.Where(i => i.Imageid == menuToCreate.Imageid).FirstOrDefault().ImageUrl; menuItemDTOToReturn.menuId = menuToCreate.Menuid; menuItemDTOToReturn.price = menuToCreate.Price; menuItemDTOToReturn.title = menuToCreate.Title; return(menuItemDTOToReturn); } }
public ActionResult Post([FromBody] MenuItemToCreateDTO menuItemToCreateDTO) { if (menuItemToCreateDTO == null) { return(BadRequest()); } if (menuItemToCreateDTO.title == menuItemToCreateDTO.description) { ModelState.AddModelError("Title", "The title must be different than the description"); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } MenuItemDTO createdMenuItemDTO = _menuRepository.CreateMenuItem(menuItemToCreateDTO); return(CreatedAtRoute("GetMenu", new { menuId = createdMenuItemDTO.menuId }, createdMenuItemDTO)); }