我有一个非常大的问题: 我试图使用其他对象找到实体(与NHibernate)。例: Emplyee(实体) - > {姓名,姓氏,电子邮件,地址} EmplyeeSearchFilters(过滤器对象) - > {姓名,姓氏,电子邮件,地址} 然后,我想将EmployeeSearchFilters传递给Repository(通用),并使用非空属性自动查找NHibernate。例: EmployeeSearchFilters - > {Name =“Nelly”,LastName = null,Email =“@ fibertel.com”,Addres = null} 有人知道我该怎么做?
谢谢!
答案 0 :(得分:2)
我认为NHibernate.Criterion.Example
标准可用于此目的。可以找到文档here
答案 1 :(得分:1)
您可以使用此功能来使用linq:
public virtual List<T> RetrieveByList<T>(Expression<Func<T, bool>> predicate)
{
return Session.Query<T>().Where(predicate).ToList<T>();
}
可以这样使用:
RetrieveByList<Customer>(x=>x.Name == "Nelly" && x.LastName == null && x.Email == "@fibertel.com" && x.Addres == null)
您可以使用动态谓词http://www.codeproject.com/Articles/28580/LINQ-and-Dynamic-Predicate-Construction-at-Runtime