C#:Mongo DB嵌套数组

时间:2016-10-13 08:44:12

标签: c# mongodb

我使用的是MongoDB和C#SDK。

我有这个结构:

enter image description here

和以下代码:

FilterDefinition<RoleEntry> subFilter = Builders<RoleEntry>.Filter.Eq(p => p.Sub, _sub);
FilterDefinition<RoleEntry> roleFilter = Builders<RoleEntry>.Filter.ElemMatch(p => p.Roles, r => r.DealerId != null);
FilterDefinition<RoleEntry> andFilter = Builders<RoleEntry>.Filter.And(subFilter, roleFilter);

UpdateDefinition<RoleEntry> updateDefinition = Builders<RoleEntry>.Update.PullAll("Roles.$.RoleIds", roleIds);
UpdateResult updateResult = await _mongoConnector.RoleEntryCollection.UpdateOneAsync(andFilter, updateDefinition, new UpdateOptions { }, cancellationToken);

roleIds是一个包含PurchasingManager的字符串数组。

问题:代码只会移除第一个PurchasingManager,但我想在&#34;角色&#34;的所有条目中将其删除。 - &GT; &#34; RoleIds&#34;阵列。

0 个答案:

没有答案