在实体框架中定义 WHERE "value" IN(1,2,3) ASP.NET



我有这部分代码:

ViewBag.myFeedbacks = db.feedbacks.Where(f => f.project_id ?)

我应该用什么替换char,当我想定义这样的东西时:

project_id IN(1,2,3)

那么,从值列表中选择所有具有projectid的反馈?

ViewBag.myFeedbacks = db.feedbacks.Where(f => new[]{1,2,3}.Contains(f.project_id));

IQueryable.Contains专门用于发出... in ... SQL代码。

var projectIds = new[]{1, 2, 3};
ViewBag.myFeedbacks = db.feedbacks.Where(f => projectIds.Any(p => p == f.project_id))

类似这样的东西:

db.feedbacks.Where(f => yourArray.Contains(f.project_id))

最新更新