Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# MongoDB更新数组文档中存在匹配项的嵌套数组对象_C#_Mongodb - Fatal编程技术网

C# 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

这是我的MongoDB文档

{  
   "_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);