【发布时间】:2019-01-10 07:02:35
【问题描述】:
每次我使用 Include 扩展时,如果在 WHERE CLAUSE 中使用包含实体的值,它会返回错误。
我包含了 System.Data.Entity 这是常见的答案,但仍然有同样的问题。
型号:
public partial class business_partner
{
public int id { get; set; }
public string accountid { get; set; }
}
public partial class order
{
public int id { get; set; }
public string doc_number { get; set; }
public int vendor_id { get; set; }
public int status { get; set; };
[ForeignKey("vendor_id")]
public virtual business_partner businessPartnerVendor { get; set; }
}
public IQueryable<order> GetOrder()
{
return (context.order);
}
查询:
_orderService.GetOrder()
.Include(a => a.businessPartnerVendor)
.Where(o => o.doc_number == "Order Number"
&& o.businessPartnerVendor.accountid == "TEST"
&& o.status > 2 && o.status != 9).Count() > 0
例外:
LINQ to Entities 不支持指定的类型成员“businessPartnerVendor”。仅支持初始化器、实体成员和实体导航属性。
【问题讨论】:
-
“它会坏掉”是什么意思?
-
是的,有什么错误?
-
@GeorgiGeorgiev 我为我的任期道歉。但我的意思是它会引发错误。
-
@John 错误是“LINQ to Entities 不支持指定的类型成员'businessPartnerVendor'。仅支持初始化程序、实体成员和实体导航属性。”
标签: c# entity-framework linq