C# 我如何模拟;在;使用Linq2Sql

C# 我如何模拟;在;使用Linq2Sql,c#,linq-to-sql,C#,Linq To Sql,我经常发现自己有一个断开连接的Linq2Sql对象或键的列表,需要从Linq2Sql数据上下文中重新选择这些对象或键,以便在数据库中进行更新或删除。如果这是SQL,我会在SQLWHERE子句中使用IN,但我一直坚持在Linq2Sql中做什么。以下是我想写的示例: public void MarkValidated(IList<int> idsToValidate) { using(_Db.NewSession()) // Instatiates new DataContext

我经常发现自己有一个断开连接的Linq2Sql对象或键的列表,需要从Linq2Sql数据上下文中重新选择这些对象或键,以便在数据库中进行更新或删除。如果这是SQL,我会在SQL
WHERE
子句中使用
IN
,但我一直坚持在Linq2Sql中做什么。以下是我想写的示例:

public void MarkValidated(IList<int> idsToValidate)
{
    using(_Db.NewSession()) // Instatiates new DataContext
    {
        // ThatAreIn <- this is where I am stuck
        var items = _Db.Items.ThatAreIn(idsToValidate).ToList();
        foreach(var item in items)
            item.Validated = DateTime.Now;
        _Db.SubmitChanges();
    } // Disposes of DataContext
}
public void MarkValidated(IList idsToValidate)
{
使用(_Db.NewSession())//安装新的DataContext
{
//你能做些什么

var items = _Db.Items.Where(i => idsToValidate.Contains(i.Key));
这能行吗?还是我遗漏了什么?

我就知道。
var items = _Db.Items.Where(i => idsToValidate.Contains(i.Key));