public IHttpActionResult CreateMeals(MealsBindingModel m) { if (!ModelState.IsValid) return this.BadRequest(); if (!this.Data.Restaurants.Any(r => r.Id == m.RestaurantId)) //!!! return this.BadRequest(); var uId = User.Identity.GetUserId(); if (this.Data.Restaurants.FirstOrDefault(r => r.Id == m.RestaurantId).OwnerId != uId) return this.Unauthorized(); var meal = new Meal { Name = m.Name, RestaurantId = m.RestaurantId, Price = m.Price, TypeId = m.TypeId, Type = this.Data.MealTypes.FirstOrDefault(mt => mt.Id == m.TypeId) // for some reason it doesnt set itself. }; this.Data.Meals.Add(meal); this.Data.SaveChanges(); return this.Created("http://localhost:1337/api/meals/" + meal.Id, new { meal.Name, meal.RestaurantId, meal.Price, Type = meal.Type.Name }); }
public IHttpActionResult CreateMeals(MealsBindingModel m) { if (!ModelState.IsValid) { return(this.BadRequest()); } if (!this.Data.Restaurants.Any(r => r.Id == m.RestaurantId)) //!!! { return(this.BadRequest()); } var uId = User.Identity.GetUserId(); if (this.Data.Restaurants.FirstOrDefault(r => r.Id == m.RestaurantId).OwnerId != uId) { return(this.Unauthorized()); } var meal = new Meal { Name = m.Name, RestaurantId = m.RestaurantId, Price = m.Price, TypeId = m.TypeId, Type = this.Data.MealTypes.FirstOrDefault(mt => mt.Id == m.TypeId) // for some reason it doesnt set itself. }; this.Data.Meals.Add(meal); this.Data.SaveChanges(); return(this.Created("http://localhost:1337/api/meals/" + meal.Id, new { meal.Name, meal.RestaurantId, meal.Price, Type = meal.Type.Name })); }