gpt4 book ai didi

c# - 无法从相关表中获取数据

转载 作者:太空宇宙 更新时间:2023-11-03 13:23:08 25 4
gpt4 key购买 nike

我有两个模型,Pizza 和 Topping。每个披萨可以有很多配料。

当我尝试访问每个 Pizzas toppings 时,它总是说计数为 0,尽管我的映射表有多个记录。

但是,我可以获得与 Toppings 相关的比萨饼(我不想这样做 - 我猜出于某种原因这是错误的方式)。

模型:

public class Pizza
{
public int PizzaId { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public decimal Price { get; set; }
public string Size { get; set; }
public string Status { get; set; }
public virtual ICollection<Topping> PizzaToppings { get; set; }
}

public class Topping
{
public int ToppingId { get; set; }
public string Name { get; set; }
public decimal Price { get; set; }
public string Size { get; set; }
public string Status { get; set; }

public virtual ICollection<Pizza> PizzasOn { get; set; }
}

public class EFDbContext : DbContext
{
public DbSet<Pizza> Pizzas { get; set; }
public DbSet<Topping> Toppings { get; set; }
}

查看:

<p>Pizza Topping Count: @Model.PizzaToppings.Count()</p>

这将返回 0。

Controller :

public ViewResult ViewPizza(Pizza pizza)
{
Pizza pizzaDetails = pizza;

return View(pizzaDetails);
}

最佳答案

您必须像这样显式加载 Toppings:

var pizzas = db.Pizzas.Include("PizzaToppings");
var pizza = pizzas.Where()... // select your specific pizza

看看这个:Entity Framework - Loading Related Entities .

关于c# - 无法从相关表中获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23427377/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com