nhibernate查询通过他的Guid返回用户

时间:2009-12-03 22:59:28

标签: nhibernate hql criteria

我有一个用户类:

public class User
{
   public virtual int ID {get;set;}
   public virtual string UserGuid {get;set;}  // its unique!
}

有人可以告诉我如何使用HQL和条件进行查询以通过UserGuid获取用户吗?

2 个答案:

答案 0 :(得分:2)

Matthieu在这里给出了HQL标准:

public User GetUserByUserGuid(Guid userGuid){

  ICriteria crit = Session.CreateCriteria<User>();
  crit.Add(Expression.Eq("UserGuid", userGuid));
  return crit.UniqueResult<User>(); //will return null if not found

}

答案 1 :(得分:1)

如果它是唯一的:

var query = Session.CreateQuery("from User u where u.UserGuid = :id");
            query.SetString("id", id);

var user = query.UniqueResult<User>();