Mongodb e以后添加或更新文件时
多亏@Stennie,在他的回答的帮助下,我可以想出C#聚合代码Mongodb e以后添加或更新文件时,mongodb,mongodb-.net-driver,Mongodb,Mongodb .net Driver,多亏@Stennie,在他的回答的帮助下,我可以想出C#聚合代码 var match = new BsonDocument { { "$match", new BsonDocument{ {"ProductName", new BsonRegularExpressio
var match = new BsonDocument
{
{
"$match",
new BsonDocument{
{"ProductName", new BsonRegularExpression("cap", "i")}
}
}
};
var group = new BsonDocument
{
{"$group",
new BsonDocument
{
{"_id", "$ProductName"},
{"SKU", new BsonDocument{
{
"$first", "$SKU"
}}
}
}}
};
var project = new BsonDocument{
{
"$project",
new BsonDocument
{
{"_id", 0 },
{"ProductName","$_id" },
{"SKU", 1}
}}};
var sort = new BsonDocument{
{
"$sort",
new BsonDocument
{
{
"ProductName",1 }
}
}};
var pipeline = new[] { match, group, project, sort };
var aggResult = collection.Aggregate(pipeline);
var products= aggResult.ResultDocuments.Select(BsonSerializer.Deserialize<ProductOL>).ToList();
var match=新的BsonDocument
{
{
“$match”,
新的B文件{
{“ProductName”,新的BsonRegularExpression(“cap”,“i”)}
}
}
};
var组=新的BsonDocument
{
{“$group”,
新的B文件
{
{“\u id”,“$ProductName”},
{“SKU”,新的B文件{
{
“$first”、“$SKU”
}}
}
}}
};
var项目=新的BsonDocument{
{
“$project”,
新的B文件
{
{u id',0},
{“ProductName”、“$\u id”},
{“SKU”,1}
}}};
var sort=新的BsonDocument{
{
“$sort”,
新的B文件
{
{
“产品名称”,1}
}
}};
var pipeline=new[]{match,group,project,sort};
var acgreult=collection.Aggregate(管道);
var products=acgresult.ResultDocuments.Select(BsonSerializer.Deserialize.ToList();
使用聚合搜索
AggregateArgs args = new AggregateArgs();
List<BsonDocument> piple = new List<BsonDocument>();
piple.Add(match);
piple.Add(group);
piple.Add(project);
piple.Add(sort);
args.Pipeline = piple;
// var pipeline = new[] { match, group, project, sort };
var aggResult = collection.Aggregate(args);
products = aggResult.Select(BsonSerializer.Deserialize<ProductOL>).ToList();
AggregateArgs args=新的AggregateArgs();
List piple=新列表();
添加(匹配);
添加(组);
添加(项目);
添加(排序);
参数管道=管道;
//var pipeline=new[]{match,group,project,sort};
var acgreult=集合.聚合(args);
products=acgreult.Select(BsonSerializer.Deserialize.ToList();
多亏@Stennie,在他的回答的帮助下,我可以想出C#聚合代码
var match = new BsonDocument
{
{
"$match",
new BsonDocument{
{"ProductName", new BsonRegularExpression("cap", "i")}
}
}
};
var group = new BsonDocument
{
{"$group",
new BsonDocument
{
{"_id", "$ProductName"},
{"SKU", new BsonDocument{
{
"$first", "$SKU"
}}
}
}}
};
var project = new BsonDocument{
{
"$project",
new BsonDocument
{
{"_id", 0 },
{"ProductName","$_id" },
{"SKU", 1}
}}};
var sort = new BsonDocument{
{
"$sort",
new BsonDocument
{
{
"ProductName",1 }
}
}};
var pipeline = new[] { match, group, project, sort };
var aggResult = collection.Aggregate(pipeline);
var products= aggResult.ResultDocuments.Select(BsonSerializer.Deserialize<ProductOL>).ToList();
var match=新的BsonDocument
{
{
“$match”,
新的B文件{
{“ProductName”,新的BsonRegularExpression(“cap”,“i”)}
}
}
};
var组=新的BsonDocument
{
{“$group”,
新的B文件
{
{“\u id”,“$ProductName”},
{“SKU”,新的B文件{
{
“$first”、“$SKU”
}}
}
}}
};
var项目=新的BsonDocument{
{
“$project”,
新的B文件
{
{u id',0},
{“ProductName”、“$\u id”},
{“SKU”,1}
}}};
var sort=新的BsonDocument{
{
“$sort”,
新的B文件
{
{
“产品名称”,1}
}
}};
var pipeline=new[]{match,group,project,sort};
var acgreult=collection.Aggregate(管道);
var products=acgresult.ResultDocuments.Select(BsonSerializer.Deserialize.ToList();
使用聚合搜索
AggregateArgs args = new AggregateArgs();
List<BsonDocument> piple = new List<BsonDocument>();
piple.Add(match);
piple.Add(group);
piple.Add(project);
piple.Add(sort);
args.Pipeline = piple;
// var pipeline = new[] { match, group, project, sort };
var aggResult = collection.Aggregate(args);
products = aggResult.Select(BsonSerializer.Deserialize<ProductOL>).ToList();
AggregateArgs args=新的AggregateArgs();
List piple=新列表();
添加(匹配);
添加(组);
添加(项目);
添加(排序);
参数管道=管道;
//var pipeline=new[]{match,group,project,sort};
var acgreult=集合.聚合(args);
products=acgreult.Select(BsonSerializer.Deserialize.ToList();
多亏@Stennie,在他的回答的帮助下,我可以想出C#聚合代码
var match = new BsonDocument
{
{
"$match",
new BsonDocument{
{"ProductName", new BsonRegularExpression("cap", "i")}
}
}
};
var group = new BsonDocument
{
{"$group",
new BsonDocument
{
{"_id", "$ProductName"},
{"SKU", new BsonDocument{
{
"$first", "$SKU"
}}
}
}}
};
var project = new BsonDocument{
{
"$project",
new BsonDocument
{
{"_id", 0 },
{"ProductName","$_id" },
{"SKU", 1}
}}};
var sort = new BsonDocument{
{
"$sort",
new BsonDocument
{
{
"ProductName",1 }
}
}};
var pipeline = new[] { match, group, project, sort };
var aggResult = collection.Aggregate(pipeline);
var products= aggResult.ResultDocuments.Select(BsonSerializer.Deserialize<ProductOL>).ToList();
var match=新的BsonDocument
{
{
“$match”,
新的B文件{
{“ProductName”,新的BsonRegularExpression(“cap”,“i”)}
}
}
};
var组=新的BsonDocument
{
{“$group”,
新的B文件
{
{“\u id”,“$ProductName”},
{“SKU”,新的B文件{
{
“$first”、“$SKU”
}}
}
}}
};
var项目=新的BsonDocument{
{
“$project”,
新的B文件
{
{u id',0},
{“ProductName”、“$\u id”},
{“SKU”,1}
}}};
var sort=新的BsonDocument{
{
“$sort”,
新的B文件
var match = new BsonDocument
{
{
"$match",
new BsonDocument{
{"ProductName", new BsonRegularExpression("cap", "i")}
}
}
};
var group = new BsonDocument
{
{"$group",
new BsonDocument
{
{"_id", "$ProductName"},
{"SKU", new BsonDocument{
{
"$first", "$SKU"
}}
}
}}
};
var project = new BsonDocument{
{
"$project",
new BsonDocument
{
{"_id", 0 },
{"ProductName","$_id" },
{"SKU", 1}
}}};
var sort = new BsonDocument{
{
"$sort",
new BsonDocument
{
{
"ProductName",1 }
}
}};
var pipeline = new[] { match, group, project, sort };
var aggResult = collection.Aggregate(pipeline);
var products= aggResult.ResultDocuments.Select(BsonSerializer.Deserialize<ProductOL>).ToList();
AggregateArgs args = new AggregateArgs();
List<BsonDocument> piple = new List<BsonDocument>();
piple.Add(match);
piple.Add(group);
piple.Add(project);
piple.Add(sort);
args.Pipeline = piple;
// var pipeline = new[] { match, group, project, sort };
var aggResult = collection.Aggregate(args);
products = aggResult.Select(BsonSerializer.Deserialize<ProductOL>).ToList();