C# HQL选择其中的object1.list<;对象2>;[0…n].Id=givenId

C# HQL选择其中的object1.list<;对象2>;[0…n].Id=givenId,c#,nhibernate,hql,C#,Nhibernate,Hql,我有一个类事务,其中的参数是标记列表 我想按TagId选择事务列表 类似这样的情况(我的查询在WHERE子句中显然是错误的…: transactionList = session.CreateQuery("FROM Transaction TR WHERE TR.Tags.TagId =: id") .SetInt32("id", tId) .List<Transaction>(); transactionList=session.CreateQuery(“来自事务TR,其中TR.

我有一个类事务,其中的参数是标记列表

我想按TagId选择事务列表

类似这样的情况(我的查询在WHERE子句中显然是错误的…:

transactionList = session.CreateQuery("FROM Transaction TR WHERE TR.Tags.TagId =: id")
.SetInt32("id", tId)
.List<Transaction>();
transactionList=session.CreateQuery(“来自事务TR,其中TR.Tags.TagId=:id”)
.SetInt32(“id”,tId)
.List();
试试这个:

transactionList = session.CreateQuery(
    @"SELECT TR 
      FROM Transaction TR 
      JOIN TR.Tags T 
      WHERE T.TagId = :id")
.SetInt32("id", tId)
.List<Transaction>();
transactionList=session.CreateQuery(
@“选择TR
来自事务TR
加入TR.T
其中T.TagId=:id“)
.SetInt32(“id”,tId)
.List();