2009-12-03 37 views
0

返回用户我有一个用户等级:NHibernate的查询他的Guid

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

有人可以告诉我怎么用HQL和标准获得通过UserGuid用户查询?

回答

1

,如果它是独一无二的:

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

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

马修给你的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 

}