[英]MongoDB query field selection using C#
如何將此MongoDB查詢轉換為C#等效項?
db.lists.find({_id: 10}, {planet_sizes: {$elemMatch: {id: 1}}})
我嘗試以下操作均未成功,這意味着它不會返回與在shell中得到的結果相同的結果:
IMongoQuery searchQuery = Query.And(
Query.EQ("_id", 10),
Query.ElemMatch("planet_sizes",
Query.EQ("id", 1)));
我想查詢文檔的主列表,並使用_id 10提取文檔,然后從其數組中提取ID等於1的數組項。我在上面提供的MongoDB字符串查詢在shell中有效,但是我不知道如何用C#編寫等效的代碼。 提前致謝。
在C#驅動程序中,通過SetFields
的調用鏈接SetFields
來處理字段選擇:
var docs = db.GetCollection("list")
.Find(Query.EQ("_id", 10))
.SetFields(Fields.ElemMatch("planet_sizes", Query.EQ("id", 1)))
.ToList();
您可以始終使用linq http://docs.mongodb.org/ecosystem/tutorial/use-linq-queries-with-csharp-driver/或只想使用MongoQuery?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.