1
我是Nhibernate的新手。我的問題是,我想通過使用不包含在我的實體(即hbm)中的列來縮小查詢範圍。我想要做這樣的事情:NHibernate QueryOver可以有SQL-where語句嗎?
Session.QueryOver<MyEntity>()
.SQL_Where("MyFlag = 1")
因爲我沒有使用該標誌後,我不想它包括對實體
我知道我可以使用:
Session
.CreateSQLQuery("SELECT A,B,C FROM ENTITY WHERE MyFlag = 1")
.SetResultTransformer(Transformers.AliasToBean<MyEntity>())
.List<MyEntity>();
這將是很好使用QueryOver <>(),它如果添加一列更安全等
我可以問一個問題,你使用'EnableFilter'?如果是這樣的話,你不用''試試它,只用'session.EnableFilter(「SetMyFlag」)'而不用鏈接'setParameter(...)'。我很好奇這就是全部! –
Rippo
2012-04-27 06:37:39