【发布时间】:2019-08-02 15:03:26
【问题描述】:
我有一个获取记录的linq-to-sql 查询。
首先,我有一个变量可以保存一个Id或多个Id。
var consumerId = _context.Consumers.Where(x => x.UsrDefault.Equals("True"));
// This can return one or an array of Ids.
然后,我有一个 linq-to-sql 查询如下:
var query = (from users in _context.Users
join consumers in _context.Consumers
on usersId equals consumerId
select new UserConsumerDto
{
FirstName = users.FirstName,
LastName = users.LastName
}).ToList()
我的问题是,当我有多个consumerId 时,我该如何执行这个linq-to-sql 查询?我想避免任何 foreach 循环。
有人可以建议吗?
【问题讨论】:
-
如果它是一个 Id 数组,那么相等将永远无法正常工作。相反,您必须将其设为
IN子句 (Contains())
标签: c# sql linq linq-to-sql