2015-04-30 18 views
0

所以我曾經是能夠通過IQueryable 1.x版本中運行對MongoCollection LINQ查詢我如何在MongoDB的C#驅動V2抽象查詢?

當我引用我的數據庫庫,因爲我做的是露出IQueryable接口,我調用代碼從不需要引用任何C#驅動程序的東西。看起來我需要手動映射我的查詢,或者公開過濾器定義。有沒有一種「正確」的方式來做到這一點? (易於讀取/易於維護)

+1

你可以等待下一個版本將支持IQueryable的<>? :-) https://jira.mongodb.org/browse/CSHARP-935它應當存在於V2.1 – xanatos

回答

2

我建議根本就不是抽象過的驅動程序。

你真的不能使用LINQ和Exchange中的基礎數據庫,並期望反正一切工作。

正如在評論薩那託斯建議,你可以等待,爲駕駛者增加對LINQ在2.1,但請記住,LINQ是同步的,司機是沒有的。這意味着,你要麼在async代碼(which is bad)塊,還是會使用驅動程序的特殊async方法(這是不是一個真正的抽象)

維護抽象,似乎不值得在我看來的努力。

相關問題