2016-08-12 84 views
0

我需要有一個查詢這樣如何使用MongoDB構建查詢?

Query.And(Query.NE("name", name[0]), Query.NE("name", name[1])); 

但是我不知道名字[]元素的數量,我需要做[]名稱的所有元素NE的和。

有沒有辦法構建它?

+0

您使用什麼工具? (什麼/查詢來自哪裏?)我希望你可以通過多搜索來找到答案。這是一個隨機備忘單http://www.layerworks.com/blog/2014/11/11/mongodb-shell-csharp-driver-comparison-cheat-cheet – mmcrae

+0

感謝您的回答。我正在使用MongoDB.Driver.Builders.Query –

+0

您可能想要使用['$ nin'](https://docs.mongodb.com/manual/reference/operator/query/nin/#op._S_nin)相反;這樣您就不必動態構建查詢,並且效率更高。 – JohnnyHK

回答

1

Query.AND()方法簽名採用IEnumerable<IMongoQuery>參數類型,所以你可以寫你的方法對任何數量的項目如下:

Query.AND(name.Select(x=> Query.NE("name", x));