这是我第一次使用 NHibernate QueryOver,我正试图以一种通用的方式来做。到目前为止,这就是我所做的..
//Find one only
public T Find(string propertyName1, string propertyName2, string value1, string value2)
{
using (var session = sessionFactory.OpenSession())
using (var transaction = session.BeginTransaction())
{
return session.QueryOver<T>().Where(d => propertyName1 == value1)
.And(f => propertyName2 == value2).SingleOrDefault();
}
}
我不确定这是否正确。我想要做的是,使用泛型类,使用它的两个属性获取保存在数据库中的对象。
正如你所看到的,我通过了我的property1
and property2
。使用这两个属性,我想知道是否可以查询我的数据库以查找其属性value1
与value2
参数具有相同值的对象。
由于它是通用的,我需要找到一种方法来告诉我的查询应该使用哪些属性作为条件。这样做的正确方法是什么?多谢你们。