我有两个班级:
public class NormDoc
{
public virtual string Name {get;set;}
public virtual Category CategoryName {get;set;}
...
}
public class Category
{
publiс virtual string Abbr {get;set;}
public virtual string Name {get;set;}
...
}
我有用户可以选择字段的表单(只有NormDoc的属性)。例如,用户选择CategoryName
和Name
。我已经为Name属性编写了标准:
ICriteria criteria = dataAccessor.GetNormDocDAO().NHibernateSession.CreateCriteria(typeof(NormDoc));
var test = criteria.Add(Expression.Like("Name", "userText")).List();
如何为CategoryName属性编写条件?我想要这样的东西:
criteria.Add(Expression.Like("Category.Name", "userText")).List();
答案 0 :(得分:1)
尝试使用以下子标准:
var x = dataAccessor.GetNormDocDAO().NHibernateSession.CreateCriteria<NormDoc>()
.CreateCriteria("CategoryName")
.Add(Restrictions.Eq("Name", "userText"))
.List<NormDoc>();