这是一个错误吗? 使用NHibernate.Expression.Example.Create(userExample)如果我的类在属性'Type'上使用Int32,则一切正常。
public class User:Person
{
public virtual String NickName { get; set; }
public virtual String Password { get; set; }
public virtual Int32 Type { get; set; }
public enum UserType
{
Normal = 0,
Broker = 1
}
}
但使用枚举,critéria返回null:
public class User:Person
{
public virtual String NickName { get; set; }
public virtual String Password { get; set; }
public virtual UserType Type { get; set; }
public enum UserType
{
Normal = 0,
Broker = 1
}
}
在控制台中,查询显示'Broker',这是问题,我认为这是NHibernate的错误,任何sugestions?
答案 0 :(得分:1)
如果没有查看您的查询,您可以尝试使用此表达式。我假设你将枚举存储为你的db。
Expression.Eq("Type",(int) userType);