【发布时间】:2015-11-12 14:25:32
【问题描述】:
我遇到了一个错误,我似乎不知道如何解决它。
错误:Unable to create a constant value of type 'TravelAgent'. Only primitive types or enumeration types are supported in this context.
public class TravelAgent
{
public string SalesOwnerId { get; set; }
public string AgentId { get; set; }
}
var result = db.TRAVEL_AGENT.Where(x => TravelAgents.Any(f=>f.AgentId == x.AgentId && f.SalesOwnerId == x.SalesOwnerId)).ToList();
dataGridView2.DataSource = result;
List TravelAgents,包含 TravelAgent 的实例。 我想从 Travel_Agent 中获取所有行,我可以在其中找到与列表中相同的 AgentId 和 SalesOwnerId。
我知道如果我在执行此 where 查询之前使用 ToList(),那么它将成功,但我不能这样做,因为这将返回 500 000 个帖子。
错误发生在where语句处。
我做错了什么?
谢谢。
【问题讨论】:
-
想想你将如何在原始 sql 中做到这一点,你就会明白你做错了什么。
标签: c#