C# 使用linq to实体获取基于相关实体的记录
我有一个类型为Campaign的实体,我想查找具有相同实体的Campaign的所有订单。我被难住了,不知道该如何做一个非常简单的查询。 这是逻辑上的查询应该是什么,但它是无效的C# 使用linq to实体获取基于相关实体的记录,c#,entity-framework,linq,C#,Entity Framework,Linq,我有一个类型为Campaign的实体,我想查找具有相同实体的Campaign的所有订单。我被难住了,不知道该如何做一个非常简单的查询。 这是逻辑上的查询应该是什么,但它是无效的 var myCampaign = db.Campaigns.Find(15); //15 being the Id of the campaign I want to use for comparison var orders= db.Orders.Where(a=>a.Campaigns.Equals(myCa
var myCampaign = db.Campaigns.Find(15); //15 being the Id of the campaign I want to use for comparison
var orders= db.Orders.Where(a=>a.Campaigns.Equals(myCampaign)).ToList();
您可以尝试下面的
Any
操作符(假设活动字段/属性名称为“活动ID”):
您应该能够在
活动
类中添加导航属性。有了它,您就可以很容易地获得所需的内容,比如var orders=myCompaign.orders
。很抱歉,忘了提到已经有这样的导航属性了。为什么不使用它?
var campaignId = 15;
db.Orders.Where(o => o.Campaigns.Any(c => c.CampaignId == campaignId)).ToList();