包含函数返回错误,指出指定的包含路径无效

时间:2019-08-01 15:26:48

标签: c# entity-framework

我正在尝试使用名为Transections的关系表数据来获取Products数据。但是,当我尝试像下面那样使用.Include时,我得到了一个错误。请给我提示,告诉我如何解决?

using (var ctx = new ML_DatabaseEntities())
{
    var Items = ctx.Products.Include("Transactions").ToList();
}
  

错误:指定的包含路径无效。 EntityType   “ ML_DatabaseModel.Products”未声明导航属性   名称为“交易”。

1 个答案:

答案 0 :(得分:0)

我假设您在ProductTransactions之间存在一对多的关系。因此,您需要将导航属性添加到Product

public class Product {
  public int ProductID { get; set; }
  public virtual ICollection<Transaction> Transactions { get; set; }
}

然后您的Transaction类应该看起来像这样:

public class Transaction {
  public int TransactionID { get; set; }
  public int ProductID { get; set; }
  public virtual Product Product { get; set; }
}

用法是:

using (var ctx = new ML_DatabaseEntities())
{
    var Items = ctx.Products.Include(p => p.Transactions).ToList();
}

要了解更多信息,请检查此link(EF6不是Core)