【问题标题】:Nhibernate, Criteria List as search parametersNhibernate, Criteria List 作为搜索参数
【发布时间】:2012-11-18 19:05:41
【问题描述】:

基本上我想做的是找回一名军官。我调用这个方法并传递一个官员 ID 的 IList。我想做的是使用该 Ilist ,其中将包含许多唯一 ID。将每个 id 的一条记录拉入 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>();
    }

任何帮助将不胜感激,谢谢

【问题讨论】:

    标签: list nhibernate hibernate-criteria ilist


    【解决方案1】:

    解决方案应该在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>();
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-12
      • 1970-01-01
      相关资源
      最近更新 更多