我在MongoDb中面临一个小问题。 我在mongo shell中有一个项目,如下所示:
{ $project: {
"_id": 0,
"ezBaseId": "$ezBaseId",
"classificationId": "$_id.classificationId",
"name": "$_id.name",
"specification": "$_id.specification",
"img": "$_id.img",
"articles": "$articles",
"supplier": "$_id.supplier"
}},
所以,我不是在这里使用1和0,而是在创建新属性来匹配另一个属性(用于在这里解包id字段)。
但是我很难在C#中创建它。
基本预测如下:
.Project(Builders<Root>.Projection.Combine(
Builders<Root>.Projection.Exclude(x => x.Id),
Builders<Root>.Projection.Include(x => x.EzBaseId)
));
如何在包含原始集合值的投影中添加名为“Demo”的字段?
亲切的问候
答案 0 :(得分:1)
感谢@BlakesSeven,我自己设法找到了解决方案。 我和建筑商一起生活,但似乎在这种特殊情况下并不需要。
请参阅以下解决方案:
.Project(root =>
new Root2 {
ezBaseId = root.EzBaseId,
classificationId = root.Id.ClassificationId,
name = root.Id.Name,
specification = root.Id.Specification,
img = root.Id.Image,
articles = root.Articles,
supplier = root.Id.Supplier
});
我需要从投影中构建一个新类型。
@Blakes:如果你想要一些声望,请发一个答案,以便我接受。