gpt4 book ai didi

entity-framework - 我如何解决 "A specified Include path is not valid"?

转载 作者:行者123 更新时间:2023-12-03 11:32:33 25 4
gpt4 key购买 nike

我有一个相当基本的父子关系设置。最终结果是我希望能够通过 ASP.NET MVC WebAPI 将结果表作为 JSON 返回。我正在使用 Entity Framework 5.0 beta 2。

我可以用一个简单的例子来演示我遇到的错误。鉴于类 CategoryProduct具有相应的数据上下文:

public class Category
{
public int CategoryId { get; set; }
public string Title { get; set; }

public virtual IEnumerable<Product> Products { get; set; }
}

public class Product
{
public int ProductId { get; set; }
public string Title { get; set; }

public virtual Category Category { get; set; }
public virtual int CategoryId { get; set; }
}

public class ProductDataContext : DbContext
{
public DbSet<Category> Categories { get; set; }
public DbSet<Product> Products { get; set; }
}

当我尝试运行包含产品的查询时,出现以下错误:
A specified Include path is not valid. The EntityType 'FooAndBar.Category' 
does not declare a navigation property with the name 'Products'.

要获取的语句非常简单:
var everything = dc.Categories
.Include(c => c.Products);

设置列和/或查询的正确方法是什么,以便 Products包含在 Categories 中?

最佳答案

子集合属性必须声明为 ICollection<T> ,不是 IEnumerable<T> .

此外,您不需要显式添加 CategoryId字段到子类; EF 将在数据库中自动创建。

关于entity-framework - 我如何解决 "A specified Include path is not valid"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10038037/

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