で、特定のリストにないエンティティのリストを返すにNHibernate
はどうすればよいですか?
Client
エンティティがあり、 という名前のリストが定義されているとしますIList<Client> notInClients
。私は自分のSQLを次のようにしたいことを知っています:
SELECT *
FROM Clients c1
WHERE c1.ClientId NOT IN (
SELECT *
FROM Clients c2
WHERE c2.ClientId IN ('1', '2', '3', '4')
)
これには a を使用する必要があると思いDetachedCriteria
ます。たぶん次のようなもの:
var clients = session.CreateCriteria("c1")
.Add(
Subqueries.PropertyNotIn("c1.ClientId",
DetachedCriteria.For<Client>("c2").HOW_DO_I_ADD_MY_LIST)));
サブクエリの作成方法がわからないだけだと思います。私はこれで正しい道を進んでいますか?