标准的问题

本文关键字:问题 标准 | 更新日期: 2023-09-27 18:07:42

我有两个类:

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的属性)。例如user选择"CategoryName"answers"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();

标准的问题

试着这样使用子条件:

var x = dataAccessor.GetNormDocDAO().NHibernateSession.CreateCriteria<NormDoc>()
    .CreateCriteria("CategoryName")
    .Add(Restrictions.Eq("Name", "userText"))
    .List<NormDoc>();