[英]Saving one to many entity with relation Id
我需要创建一个具有关系 ID 的实体。 当我尝试保存实体时,它已正确保存。 但是当我从数据库中读取时,这是错误的
楷模:
public class Food
{
public long Id { get; set; }
[MaxLength(255)]
public string Name { get; set; } = "";
public long? MenuId { get; set; }
public Menu Menu { get; set; }
}
public class Menu
{
public long Id { get; set; }
[MaxLength(255)]
public string Name { get; set; } = "";
public ICollection<Food> Foods { get; set; }
}
控制器:
[HttpGet]
public async Task<ActionResult<IEnumerable<Food>>> Getfoods()
{
return await _context.Foods.ToListAsync();
}
[HttpPost]
public async Task<ActionResult<Food>> PostFood([FromBody] Food food)
{
var menu = await _context.Menus.FindAsync(food.MenuId);
food.Menu = menu;
_context.Entry(food).State = EntityState.Added;
// await _context.Foods.AddAsync(food);
await _context.SaveChangesAsync();
return CreatedAtAction(nameof(GetFood), new { food.Id }, food);
}
食品实体:
{
"name": "food1",
"menuId": 1
}
我的帖子 controller 返回了我想要的内容:
{
"id": 1,
"name": "food1",
"menuId": 1,
"menu": {
"id": 1,
"name": "menu1",
"foods": []
}
}
但是当我拿到食物时,菜单是 null:
[
{
"id": 1,
"name": "food1",
"menuId": 1,
"menu": null
}
]
我忘记添加.Include
到 GetFoods Controller
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.