1
當我嘗試運行這段邏輯時,NHibernate返回一個錯誤,指出它沒有提及「Site」。使用NHibernate嵌套Linq查詢
IQueryable<Product> query = this.RetrieveAll();
query = query.Where(x => x.Status == Product.Statuses.Approved || x.SiteProduct.Where(y => y.Site.ID == siteID).Count() > 0);
有點背景。 產品具有一對多地圖SiteProduct SiteProduct具有一對多的地圖網站
即使是一個簡單的版本有它指出它沒有提及ID問題:
IQueryable<Product> query = this.RetrieveAll();
query = query.Where(x => x.Status == Product.Statuses.Approved || x.SiteProduct.Where(y => y.ID > 0).Count() > 0);
確實NHibernate的有問題在其內嵌入「Where」語句?
至於表映射,它們看起來是正確的,因爲我可以橫向排列並通過延遲加載捕獲底部的單個記錄。添加,獲取和刪除記錄完美無缺。我只是在嵌套我的Linq查詢時遇到問題。
你使用的是什麼版本的NHibernate? – 2010-07-08 08:59:18
版本2.1.2.4000 – 2010-07-08 13:01:42