Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Docs 菜单
Docs 主页
/ / /
C#/ .NET驱动程序
/

版本说明

了解以下版本中的新功能:

  • 版本 3.0

  • 版本 2.30

  • 版本 2.29

  • 版本 2.28

  • 版本 2.27

  • 版本 2.26

  • 版本 2.25

  • 版本 2.24

  • 版本 2.23

  • 版本 2.22

  • 版本 2.21

警告

v 3.0 中的重大更改

v 3.0驾驶员包含重大更改。 有关更多信息,请参阅版本3.0重大更改

3.0驱动程序版本包括以下新功能:

  • 添加 MongoClientSettings.TranslationOptions 连接选项,该选项指定用于将 LINQ 查询转换为 查询API 的选项。有关详细信息,请参阅指定连接选项

  • 添加对Half 类型的支持,该类型表示半精度浮点数。此类型在.NET5 及更高版本中可用。要学习;了解有关Half 类型的更多信息,请参阅 MSDN 上的“半结构体API”参考页面。

  • IMongoClient 接口继承 IDisposable 接口。因此,MongoClient 类和实现IMongoClient 接口的其他类包含要传递给更新 Commands.ose() 的 Disp- Adds support for the ``sort 选项。方法,该方法会处理客户端端 .此方法不会释放根本的集群以及与MongoDB 服务器 的连接。要销毁集群和连接,请调用 ClusterRegistry.UnregisterAndDisposeCluster() 方法。IDisposable 接口的实施是实验性的。

    要学习;了解有关IDisposable 接口和使用Dispose() 方法的详情,请参阅 MSDN 上的“处置模式”。

  • 新增对DateOnly 类型的支持,该类型表示不带时间组件的日期值。此类型在.NET6 及更高版本中可用。要学习;了解有关DateOnly 类型的更多信息,请参阅 DateOnly 结构体。 MSDN 上的API参考页面。

  • 新增对TimeOnly 类型的支持,该类型表示不带日期组件的时间值。此类型在.NET6 及更高版本中可用。要学习;了解有关TimeOnly 类型的更多信息,请参阅 TimeOnly 结构体。 MSDN 上的API参考页面。

  • 添加在将 Find() 方法、Select() 方法或 Project()聚合阶段与 LINQ 3提供商一起使用时对隐式客户端投影的支持。在以前版本的驾驶员中,只有在调用 ToEnumerable()AsEnumerable() 方法后,才能使用 LINQ 3提供商执行客户端投影。

    要学习;了解如何为驾驶员方法启用和使用客户端投影,请选择相应的标签页:

    // Enable client-side projection
    var findOptions = new FindOptions();
    findOptions.TranslationOptions = new ExpressionTranslationOptions
    {
    EnableClientSideProjections = true
    };
    var find = collection
    .Find(doc => doc.Id == 1, findOptions);
    .Project(doc => new { R = MyFunction(doc.Name) });
    // Enable client-side projection
    var aggregateOptions = new AggregateOptions();
    aggregateOptions.TranslationOptions = new ExpressionTranslationOptions
    {
    EnableClientSideProjections = true
    };
    var queryable = collection
    .AsQueryable(aggregateOptions)
    .Where(doc => doc.Id == 1)
    .Select(doc => new { R = MyFunction(doc.Name) });
    // Enable client-side projection
    var aggregateOptions = new AggregateOptions();
    aggregateOptions.TranslationOptions = new ExpressionTranslationOptions
    {
    EnableClientSideProjections = true
    };
    var aggregate = collection
    .Aggregate(aggregateOptions)
    .Project(doc => new { R = MyFunction(doc.Name) });

    提示

    MongoClientSettings

    要为客户端上的所有查询启用客户端客户端投影,请设立MongoClientSettings对象的 TranslationOptions属性,如以下示例所示:

    clientSettings.TranslationOptions = new ExpressionTranslationOptions
    {
    EnableClientSideProjections = true
    };

    要学习;了解有关聚合管道与.NET/ C#驱动程序结合使用的更多信息,请参阅聚合操作。

  • 为批量写入操作添加 MongoClient API 。要学习;了解有关批量写入操作的更多信息,请参阅批量写入操作。

有关此发布的更多信息,请参阅 v3.0 发布说明。

2.30驾驶员不会引入新功能或错误修复。其目的是通过将 v 3.0 中删除的公共 API 标记为已过时,以便轻松迁移到.NET/ C#驱动程序v 3 .x。

2.29驾驶员发布增加了对MongoDB Server 8.0版本的支持,并包含以下新功能:

  • 新增支持v 2的Queryable Encryption范围协议的支持。

  • 添加对Queryable Encryption范围索引的支持。 有关Queryable Encryption的更多信息,请参阅MongoDB Server手册中的Queryable Encryption

有关此发布的更多信息,请参阅 v2.29 发布说明。

警告

v 2.28中潜在的重大更改

  • 所有.NET/ C#驱动程序组件都有强命名。 如果应用程序具有引用多个.NET/ C#驱动程序版本的依赖项,则必须创建绑定重定向来管理这些依赖项。 有关更多信息,请参阅版本 2.28.0重大更改。

2.28驱动程序版本包括以下新功能:

  • 添加了对涉及Nullable<T>的其他数字转换的支持。

  • 添加了在使用 KMIP 进行CSFLE 或Queryable Encryption时对delegated选项的支持。

有关此发布的更多信息,请参阅 v2.28 发布说明。

2.27驱动程序版本包括以下新功能:

  • 新增支持$sample聚合操作符的支持。

  • 为 LINQ 3中的序列化器实现Equals()方法。

  • 确保读关注和写入关注不会应用于Atlas Search索引助手命令,以避免错误。

  • 使用 MONGODB-OIDC身份验证机制时,禁止在 authMechanismProperties 连接string值中使用逗号字符。

  • 修复了一个转换错误,该错误在涉及不同大小的数字的序列化过程中导致错误。

  • 新增对使用libdl.so.2库的Linux发行版的支持。

有关此发布的更多信息,请参阅 v2.27 发布说明。

2.26驱动程序版本包括以下新功能:

  • 添加了对在Select()Project()聚合阶段使用SelectMany()聚合方法的支持。

  • 在 LINQ 查询中添加了对Dictionary.ContainsValue()调用的支持。

  • 添加了对混合类型string连接的支持。

  • 支持在libmongocrypt绑定中使用原生crypto

  • 添加了对 MemoryReadOnlyMemory 结构序列化的支持。要学习;了解有关实现这些类型的更多信息,请参阅序列化指南的“提高数组序列化性能”部分。

  • 添加了使用MONGODB-OIDC身份验证机制时对GCP身份提供商的支持。 要学习;了解更多信息,请参阅 企业身份验证机制指南中的GCP IMDS

  • 实现了 NuGet 包的签名。

  • 尽可能对其他mongos实例实施读取和写入重试。

2.25驱动程序版本包括以下新功能:

  • 添加了对MONGODB-OIDC身份验证机制和 Azure 身份提供者自动获取令牌的支持。

  • BsonClassMapSerializer找不到匹配的创建者时报告的错误消息中添加了类名称。

  • 添加了LoggedStages字段以显示执行 LINQ查询后执行的MQL 。

  • 添加了对通过使用 srvServiceName 连接选项以自定义服务名称覆盖 "mongodb" 服务名称的支持。要学习;了解更多信息,请参阅指定连接选项指南。

  • 改进批量写入操作的行为,以防止多次枚举请求参数。

2.24驱动程序版本包括以下新功能:

  • 添加了 IMongoCollection.DistinctMany() 方法。

  • 添加了对$dateFromString聚合表达式的最新可选参数的支持。

  • $search聚合阶段添加了对按分数排序的支持。

  • $vectorSearch聚合阶段添加了VectorSearchScore构建器。

  • 在 Atlas Search 中添加了对$in操作符的支持。

  • 为 LINQ 查询添加了Mql.Exists()Mql.IsMissing()Mql.IsNullOrMissing()方法。

  • 在 LINQ 查询中添加了对IComparable.CompareTo()方法的支持。

  • 添加了对AsQueryable()方法嵌套调用的支持,以支持MongoDB 实体框架核心提供程序的 LINQ 查询。

  • 添加了对 TLS 1.3的支持。

  • libmongocrypt包版本更新到1.8.2 。

  • 修复了较新 Linux 发行版上 Kerberos ( libgssapi ) 中的段错误。

  • 修复了一个 GridFS 错误;在该错误中,如果同时上传了具有相同 ID 的较大文件,则下载文件会导致错误。

  • 现在,读取和写入操作都可重试ExceededTimeLimit服务器错误。

  • 当在函数即服务 (FaaS) 环境(例如 Amazon Web Services Lambda)中运行时,驱动程序现在使用轮询监控机制。

  • 为了提高MongoDB Atlas Serverless 兼容性,驾驶员现在使用 OP_MSG 进行身份验证(如果服务器支持)。

2.23驱动程序版本包括以下新功能:

  • 对 LINQ 3集成的改进和错误修复。

  • 添加了对聚合按位运算符的支持。

  • 添加了对 MongoDB 时间序列集合中$out操作符的支持。

  • 添加了 ChangeStreamSplitLargeEvent 以处理大于16 MB 的变更流事件。

2.22驱动程序版本包括以下新功能:

后退

快速参考

在此页面上