1

基本的に私がやろうとしているのは、警官を取り戻すことです。このメソッドを呼び出して、役員 ID の IList を渡します。私がやりたいことは、多数の一意の ID を持つ Ilist を使用することです。各 ID の 1 つのレコードを役員の IList にプルし、それを返して処理します。

私の問題は、制限を正しくする方法を一生理解できないことです。したがって、リストに 3 、 6 、 9 、および 12 があるとすると、これらのレコードがすべて取得されます。

    public IList<Officer> GetOfficer(IList<int> OfficerId)
    {
        return session.CreateCriteria<Officer>()
                .Add(Restrictions.Eq("OfficerId", OfficerId))
                .SetCacheable(true)
                .List<Officer>();
    }

どんな助けでも大歓迎ですありがとう

4

1 に答える 1

0

ソリューションは次の場所にありますInExpression

public IList<Officer> GetOfficer(IList<int> OfficerId)
{
  return session.CreateCriteria<Officer>()
    .Add(new NHibernate.Criterion.InExpression("OfficerId"
               , OfficerId.Cast<object>().ToArray()))
    .SetCacheable(true)
    .List<Officer>();
}
于 2012-11-30T15:12:56.230 に答える