我需要使用nHibernate Criteria重新創建查詢。這個查詢有一個非常醜陋的where子句。nHibernate標準查詢OR或IN?
((t.Disposition_CD)='ac' Or
(t.Disposition_CD)='cc' Or
(t.Disposition_CD)='Co' Or
(t.Disposition_CD)='SF' Or
(t.Disposition_CD)='SC' Or
(t.Disposition_CD)='OR' Or
(t.Disposition_CD)='SV' Or
(t.Disposition_CD)='RI' Or
(t.Disposition_CD)='WN' Or
(t.Disposition_CD)='NC' Or
(t.Disposition_CD)='DN' Or
(t.Disposition_CD)='WT' Or
(t.Disposition_CD)='MA' Or
(t.Disposition_CD)='TO' Or
(t.Disposition_CD)='OC'))
所以,我開始在這裏
IList leadList =
session.CreateCriteria(typeof(Lead)).Add(Expression.In("CallDisposition",
new string[] {"AC","CC" })).List();
問題的物業上鉛是一種CallDisposition
對象,並給了我一個Unknown entity class: System.String
錯誤,當我嘗試這樣做。一個CallDisposition
數組是它正在尋找。
基本上我正在尋找的是一個潛在客戶的列表,符合原始查詢的所有或標準。任何建議都有幫助。
使用代碼格式化按鈕比1000s的空間容易得多... – Greg 2009-07-01 08:54:22
感謝Greg,您的建議非常有建設性並且有幫助 – jim 2009-07-01 08:59:07