C# MongoDB更新数组文档中存在匹配项的嵌套数组对象
这是我的MongoDB文档C# MongoDB更新数组文档中存在匹配项的嵌套数组对象,c#,mongodb,C#,Mongodb,这是我的MongoDB文档 { "_id":20, "GroupId":"45", "Name":"Some Name", "NestedArray":[ { "Id":3, "Name":"NesName", "IsDeleted":false } ] } 我需要编写一个更新语句,如(在SQL解释中) 这是我试过的 var groupFilter = Builders&l
{
"_id":20,
"GroupId":"45",
"Name":"Some Name",
"NestedArray":[
{
"Id":3,
"Name":"NesName",
"IsDeleted":false
}
]
}
我需要编写一个更新语句,如(在SQL解释中)
这是我试过的
var groupFilter = Builders<MyType>.Filter.Eq(x => x.Id, 45);
var nestedArayDocUpdate = Builders<MyType>.Update.Set(x => x.NestedArray[0].IsDeleted, true);
mongoDbRepository.UpdateMany(groupFilter, nestedArayDocUpdate,
new UpdateOptions {IsUpsert = false, BypassDocumentValidation = false});
var-groupFilter=Builders.Filter.Eq(x=>x.Id,45);
var nestedarydocupdate=Builders.Update.Set(x=>x.NestedArray[0].IsDeleted,true);
mongoDbRepository.UpdateMany(groupFilter、nestedArayDocUpdate、,
新的更新选项{IsUpsert=false,BypassDocumentValidation=false});
使用
MongoDB 3.2
我如何才能提出MongoDB C#驱动程序查询?我就是这样做的
var updateBuilder = Builders<Type>.Update.
.Set(x => x.NestedArray[-1].IsActive, false)
.Set(x => x.NestedArray[-1].IsDeleted, true);
mongoDbRepository.UpdateOne( Builders<Type>.Filter.Where(
x => x.NestedArray.Any(c => c.Id == categoryId)), updateBuilder);
var updateBuilder=Builders.Update。
.Set(x=>x.NestedArray[-1].IsActive,false)
.Set(x=>x.NestedArray[-1].IsDeleted,true);
mongoDbRepository.UpdateOne(Builders.Filter.Where(
x=>x.NestedArray.Any(c=>c.Id==categoryId)),updateBuilder);
我就是这样做的
var updateBuilder = Builders<Type>.Update.
.Set(x => x.NestedArray[-1].IsActive, false)
.Set(x => x.NestedArray[-1].IsDeleted, true);
mongoDbRepository.UpdateOne( Builders<Type>.Filter.Where(
x => x.NestedArray.Any(c => c.Id == categoryId)), updateBuilder);
var updateBuilder=Builders.Update。
.Set(x=>x.NestedArray[-1].IsActive,false)
.Set(x=>x.NestedArray[-1].IsDeleted,true);
mongoDbRepository.UpdateOne(Builders.Filter.Where(
x=>x.NestedArray.Any(c=>c.Id==categoryId)),updateBuilder);