nhibernate按id列表删除多条记录';使用CreateQuery进行查询

nhibernate按id列表删除多条记录';使用CreateQuery进行查询,nhibernate,fluent-nhibernate,sql-server-ce,Nhibernate,Fluent Nhibernate,Sql Server Ce,我正试图从表A中删除表B中ID列表中存在的多条记录,如下所示: List<ulong> ids = new List<ulong> {1, 2}; string deleteQuery = string.Format( @"DELETE FROM TABLE_A WHERE EXISTS (SELECT id FROM TABLE_B WHERE checkpoint_id IN :idList)");

我正试图从表A中删除表B中ID列表中存在的多条记录,如下所示:

List<ulong> ids = new List<ulong> {1, 2};

string deleteQuery = string.Format(
                @"DELETE FROM TABLE_A WHERE EXISTS 
                (SELECT id FROM TABLE_B WHERE checkpoint_id IN :idList)");

Session.CreateQuery(deleteQuery).SetParameterList("idList", ids).ExecuteUpdate();
如果我把列表硬编码[在(1,2)],它会工作。 我错过了什么?

发现了问题:

我需要一个额外的括号:idList

string deleteQuery = string.Format(
            @"DELETE FROM TABLE_A WHERE EXISTS 
            (SELECT id FROM TABLE_B WHERE checkpoint_id IN (:idList))");
string deleteQuery = string.Format(
            @"DELETE FROM TABLE_A WHERE EXISTS 
            (SELECT id FROM TABLE_B WHERE checkpoint_id IN (:idList))");