如何使用LINQ2SQL生成WHERE ... IN子句?

Jed*_*dja 8 linq linq-to-sql

从SQL转向LINQ2SQL有时非常简单.以下声明

SELECT user FROM users WHERE lastname='jones'
Run Code Online (Sandbox Code Playgroud)

很容易翻译成

from u in users where u.lastname='jones' select u
Run Code Online (Sandbox Code Playgroud)

但是如何生成以下SQL?

SELECT user FROM users WHERE lastname IN ('jones', 'anderson')
Run Code Online (Sandbox Code Playgroud)

Jed*_*dja 12

我不得不做一些搜索来找到这个,并认为它可能对其他人有用.

List<string> names = new List<string>() { "jones", "anderson" };

from u in users where names.Contains(u.lastname) select u
Run Code Online (Sandbox Code Playgroud)