如何在 C# Mongodb 强类型驱动程序中删除嵌套文档的数组内的元素

蜡人

我使用官方 C# MongoDb 强类型驱动程序版本 2.5.0 与 MongoDB 交互。

考虑以下类:

public class Author
{

    public Author()
    {

    }

    [BsonId]
    [BsonRepresentation(BsonType.ObjectId)]
    public string Id { get; set; }

    public string FirstName { get; set; }

    public string LastName { get; set; }

    public string BirthDate { get; set; }

    public string ScientificDegree { get; set; }

    public Library Library { get; set; }
}

public class Library
{
    public DateTime DateAdded { get; set; }

    public DateTime LastModified { get; set; }

    public List<Book> Books { get; set; }

    [BsonDefaultValue(0)]
    public int ReadCount { get; set; }

}

如何使用作者库中的 id 删除一本书?这是我直接从数组中删除元素的代码。

var field = new ExpressionFieldDefinition<Library, List<Book>>(library => library.Books);

var bookFilter = Builders<Book>.Filter.Eq(book => book.Id, bookId);

var update = Builders<Library>.Update.PullFilter(field, bookFilter);

//How to apply the update to the author using author id
瑞奇·库马尔

您需要存储Library并对该Library对象执行更改并将其更新回文档。您可以使用的另一种方法PullFilter来删除它

var update = Builders<Author>.Update.PullFilter(x=>x.Library.Books,Builders<Book>.Filter.Eq(x=>x.id,bookId));
db.Author.UpdateOneAsync(x => x.Id.Equals(autherId), update).Result;

db.Author 是集合实例

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用C#驱动程序删除mongodb文档中的嵌套数组元素

来自分类Dev

如何使用最新的MongoDB C#驱动程序根据多个条件删除复杂数组对象的嵌套数组中的元素?

来自分类Dev

C#Mongodb驱动程序-如何在位置0的数组中插入元素

来自分类Dev

如何使用C#MongoDB驱动程序编写嵌套对象属性不能相等的强类型过滤器?

来自分类Dev

如何在MongoDB C#驱动程序中按值的字段范围选择文档?

来自分类Dev

如何使用官方的MongoDB C#驱动程序将BsonDocument转换为强类型对象?

来自分类Dev

如何使用C#驱动程序更新MongoDB中数组子文档中包含的数组子文档中的字段?

来自分类Dev

如何使用C#驱动程序更新MongoDB中数组子文档中包含的数组子文档中的字段?

来自分类Dev

MongoDB C#驱动程序-如何查询子文档数组上的属性

来自分类Dev

使用 C# Mongodb 强类型驱动程序在事务中创建多个索引

来自分类Dev

如何在MongoDB驱动程序中为NodeJS使用嵌套数组?

来自分类Dev

mongoDB:C#驱动程序V2如何更新嵌套集合中的项目

来自分类Dev

如何在C#驱动程序中编写以下MongoDB查询?

来自分类Dev

如何在C#MongoDB驱动程序v2.0中获取连接状态?

来自分类Dev

如何在MongoDB C#驱动程序中按后代属性筛选?

来自分类Dev

MongoDB C#驱动程序-如何在.NET中的联接集合上强制投影?

来自分类Dev

如何在MongoDB C#驱动程序中获得结果的子集?

来自分类Dev

如何在MongoDb(C#驱动程序)中禁用鉴别字段

来自分类Dev

如何在MongoDB-C驱动程序中查找特定值

来自分类Dev

如何在Ubuntu中安装和使用mongodb c ++驱动程序?

来自分类Dev

如何在MongoDB Java驱动程序3.2中编写查询,例如(A || B || C)&&(X || Y)

来自分类Dev

如何通过 .net mongoDb 驱动程序通过嵌套属性获取 mongoDb 中的文档

来自分类Dev

MongoDB C# 驱动程序:如何将 $in 运算符用于嵌套的嵌入式文档?

来自分类Dev

如何使用Java驱动程序将文档与mongodb中的现有数组元素进行匹配

来自分类Dev

MongoDB C#驱动程序-更新嵌入式文档数组中的所有字段

来自分类Dev

Mongodb C# 驱动程序只返回数组中匹配的子文档

来自分类Dev

C#MongoDB驱动程序强类型过滤器用法

来自分类Dev

如何在不指定类的情况下使用MongoDB C#驱动程序

来自分类Dev

如何在 mongodb C# 驱动程序 2.4 中使用 GeoWithin

Related 相关文章

  1. 1

    如何使用C#驱动程序删除mongodb文档中的嵌套数组元素

  2. 2

    如何使用最新的MongoDB C#驱动程序根据多个条件删除复杂数组对象的嵌套数组中的元素?

  3. 3

    C#Mongodb驱动程序-如何在位置0的数组中插入元素

  4. 4

    如何使用C#MongoDB驱动程序编写嵌套对象属性不能相等的强类型过滤器?

  5. 5

    如何在MongoDB C#驱动程序中按值的字段范围选择文档?

  6. 6

    如何使用官方的MongoDB C#驱动程序将BsonDocument转换为强类型对象?

  7. 7

    如何使用C#驱动程序更新MongoDB中数组子文档中包含的数组子文档中的字段?

  8. 8

    如何使用C#驱动程序更新MongoDB中数组子文档中包含的数组子文档中的字段?

  9. 9

    MongoDB C#驱动程序-如何查询子文档数组上的属性

  10. 10

    使用 C# Mongodb 强类型驱动程序在事务中创建多个索引

  11. 11

    如何在MongoDB驱动程序中为NodeJS使用嵌套数组?

  12. 12

    mongoDB:C#驱动程序V2如何更新嵌套集合中的项目

  13. 13

    如何在C#驱动程序中编写以下MongoDB查询?

  14. 14

    如何在C#MongoDB驱动程序v2.0中获取连接状态?

  15. 15

    如何在MongoDB C#驱动程序中按后代属性筛选?

  16. 16

    MongoDB C#驱动程序-如何在.NET中的联接集合上强制投影?

  17. 17

    如何在MongoDB C#驱动程序中获得结果的子集?

  18. 18

    如何在MongoDb(C#驱动程序)中禁用鉴别字段

  19. 19

    如何在MongoDB-C驱动程序中查找特定值

  20. 20

    如何在Ubuntu中安装和使用mongodb c ++驱动程序?

  21. 21

    如何在MongoDB Java驱动程序3.2中编写查询,例如(A || B || C)&&(X || Y)

  22. 22

    如何通过 .net mongoDb 驱动程序通过嵌套属性获取 mongoDb 中的文档

  23. 23

    MongoDB C# 驱动程序:如何将 $in 运算符用于嵌套的嵌入式文档?

  24. 24

    如何使用Java驱动程序将文档与mongodb中的现有数组元素进行匹配

  25. 25

    MongoDB C#驱动程序-更新嵌入式文档数组中的所有字段

  26. 26

    Mongodb C# 驱动程序只返回数组中匹配的子文档

  27. 27

    C#MongoDB驱动程序强类型过滤器用法

  28. 28

    如何在不指定类的情况下使用MongoDB C#驱动程序

  29. 29

    如何在 mongodb C# 驱动程序 2.4 中使用 GeoWithin

热门标签

归档