C# NHibernate:带组件的Or子句
我有两门课:C# NHibernate:带组件的Or子句,c#,nhibernate,C#,Nhibernate,我有两门课: public class Person{ public virtual string Name { get; set;} public virtual Address Address { get; set; } } public class Address{ public virtual string Street { get; set; } } 现在我想让NHibernate给我所有的人,名字等于Xyz或地址,街道等于Xyz 这种方法是一种结合: ICriter
public class Person{
public virtual string Name { get; set;}
public virtual Address Address { get; set; }
}
public class Address{
public virtual string Street { get; set; }
}
现在我想让NHibernate给我所有的人,名字等于Xyz或地址,街道等于Xyz
这种方法是一种结合:
ICriteria criteria = session.CreateCriteria(typeof(Person));
criteria.Add(Expression.Eq("Name", "Xyz"))
.CreateCriteria("Address").Add(Expression.Eq("Street", "Xyz"));
我想要的是and或子句
多谢各位!
Andy我一直使用HQL查询来实现这一点——至少如果您习惯SQL,那么编写和阅读起来会容易得多。是这样的:
IQuery query = session.CreateQuery("FROM Person p WHERE p.Name = :Name OR p.Address.Street = :Street");
query.SetParameter("Name", "Xyz");
query.SetParameter("Street", "Xyz");
完美的非常感谢你。没错,这些HQL查询要简单得多:-