0
A
回答
1
您的代碼有兩個問題。
首先是你如何聲明你的方法:
Func<T, bool> ComposeFilter
當你這樣做,你是返回一個編譯代表,以及被選擇的Where
擴展方法重載是從Enumerable
而不是Queryable
。
你必須將其聲明爲:
Expression<Func<T, bool>> ComposeFilter
的第二個問題是,你寫的代碼不能被轉換爲表達式樹。由於您不是使用原語,而是動態構建表達式,因此您需要了解System.Linq.Expressions
中的內容。
相關問題
- 1. nhibernate不查詢數據庫
- 2. NHibernate的查詢緩存到數據庫
- 3. 如何用NHibernate查詢Oracle數據庫?
- 4. NHibernate QueryOver使用相同的查詢查詢數據庫三次
- 5. 如何在查詢實體時強制NHibernate查詢數據庫?
- 6. 查詢MySQL數據庫客戶端
- 7. NHibernate查詢計數
- 8. 查詢數據庫
- 9. 查詢數據庫
- 10. 查詢數據庫
- 11. 數據庫 - 查詢?
- 12. nhibernate中的備用數據庫模式查詢
- 13. nhibernate在數據庫中使用子查詢
- 14. 查詢使用OData和asp.net MVC webapi針對NHibernate數據庫
- 15. NHibernate sql查詢實際上沒有對數據庫生效
- 16. NHibernate的查詢返回尚未保存到數據庫
- 17. 功能NHibernate沒有查詢數據庫正確
- 18. 單元測試通過nhibernate查詢數據庫
- 19. 低影響端到端數據庫連接和查詢測試
- 20. NHibernate驗證器做數據庫查找
- 21. 數據庫查詢計數
- 22. NHibernate的查詢
- 23. NHibernate HQL查詢
- 24. nhibernate查詢SubQueryExpression
- 25. nhibernate manytomany查詢
- 26. NHibernate查詢CreateCriteria
- 27. 查詢在Nhibernate
- 28. NHibernate Linq查詢
- 29. 查詢NHibernate
- 30. NHibernate查詢
好吧,這是我的預期,我需要建立一個表達式而不是一個函數。我想知道爲什麼我沒有得到「不支持的例外」。 NHibernate重新調整string.Contains函數嗎? – fso
NHibernate從來沒有看到你的代碼。只要'Enumerable'接管,未經過篩選的查詢就會被執行,然後結果被Linq-to-object過濾。 –