新增功能
在此页面上
了解以下版本中的新功能:
3.0 中的新功能
3.0驱动程序版本包括以下新功能:
添加
MongoClientSettings.TranslationOptions
连接选项,该选项指定用于将 LINQ 查询转换为 Query API的选项。有关详细信息,请参阅连接选项。添加对
Half
类型的支持,该类型表示半精度浮点数。此类型在.NET 5 及更高版本中可用。要学习;了解有关Half
类型的详情,请参阅 MSDN 上的半结构 API参考页面。IMongoClient
接口继承IDisposable
接口。因此,实现IMongoClient
接口的MongoClient
类和其他类都包含Dispose()
方法,该方法可对客户端进行处置。此方法不会释放根本的集群以及与MongoDB 服务器的连接。 要销毁集群和连接,请调用ClusterRegistry.UnregisterAndDisposeCluster()
方法。IDisposable
接口的实施是实验性的。新增对
DateOnly
类型的支持,该类型表示不带时间组件的日期值。此类型在.NET 6 及更高版本中可用。要学习;了解有关DateOnly
类型的更多信息,请参阅 DateOnly 结构体。MSDN 上的API参考页面。新增对
TimeOnly
类型的支持,该类型表示不带日期组件的时间值。此类型在.NET 6 及更高版本中可用。要学习;了解有关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 }; 为批量写入操作添加
MongoClient
API 。要学习;了解有关批量写入操作的更多信息,请参阅批量写入操作。
有关此发布的更多信息,请参阅 v3.0 发布说明。
2.30 中的新功能
2.30驾驶员不会引入新功能或错误修复。其目的是通过将 v 3.0 中删除的公共 API 标记为已过时,以便轻松迁移到.NET/ C#驱动程序v 3 .x。
2.29 中的新功能
2.29驾驶员发布增加了对MongoDB Server 8.0版本的支持,并包含以下新功能:
新增支持v 2的Queryable Encryption范围协议的支持。
添加对Queryable Encryption范围索引的支持。 有关Queryable Encryption的更多信息,请参阅MongoDB Server手册中的Queryable Encryption 。
有关此发布的更多信息,请参阅 v2.29 发布说明。
2.28 中的新功能
警告
v 2.28中潜在的重大更改
所有.NET/ C#驱动程序组件都有强命名。 如果应用程序具有引用多个.NET/ C#驱动程序版本的依赖项,则必须创建绑定重定向来管理这些依赖项。 有关更多信息,请参阅版本 2.28.0重大更改。
2.28驱动程序版本包括以下新功能:
添加了对涉及
Nullable<T>
的其他数字转换的支持。添加了在使用 KMIP 进行CSFLE 或Queryable Encryption时对
delegated
选项的支持。
有关此发布的更多信息,请参阅 v2.28 发布说明。
2.27 中的新功能
2.27驱动程序版本包括以下新功能:
新增支持
$sample
聚合操作符的支持。为 LINQ 3中的序列化器实现
Equals()
方法。确保读关注和写入关注不会应用于Atlas Search索引助手命令,以避免错误。
使用
MONGODB-OIDC
身份验证机制时,禁止在authMechanismProperties
连接string值中使用逗号字符。修复了一个转换错误,该错误在涉及不同大小的数字的序列化过程中导致错误。
新增对使用
libdl.so.2
库的Linux发行版的支持。
有关此发布的更多信息,请参阅 v2.27 发布说明。
2.26 中的新功能
2.26驱动程序版本包括以下新功能:
添加了对在
Select()
和Project()
聚合阶段使用SelectMany()
聚合方法的支持。在 LINQ 查询中添加了对
Dictionary.ContainsValue()
调用的支持。添加了对混合类型string连接的支持。
支持在
libmongocrypt
绑定中使用原生crypto
。添加了对
Memory
和ReadOnlyMemory
结构序列化的支持。添加了使用
MONGODB-OIDC
身份验证机制时对GCP身份提供商的支持。 要学习;了解更多信息,请参阅 企业身份验证机制指南中的GCP IMDS 。实现了 NuGet 包的签名。
尽可能对其他
mongos
实例实施读取和写入重试。
2.25 中的新功能
2.25驱动程序版本包括以下新功能:
添加了对
MONGODB-OIDC
身份验证机制和 Azure 身份提供者自动获取令牌的支持。在
BsonClassMapSerializer
找不到匹配的创建者时报告的错误消息中添加了类名称。添加了
LoggedStages
字段以显示执行 LINQ查询后执行的MQL 。添加了对通过使用
srvServiceName
连接选项以自定义服务名称覆盖"mongodb"
服务名称的支持。改进批量写入操作的行为,以防止多次枚举请求参数。
2.24 中的新增功能
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 中的新功能
2.23驱动程序版本包括以下新功能:
对 LINQ 3集成的改进和错误修复。
添加了对聚合按位运算符的支持。
添加了对 MongoDB 时间序列集合中
$out
操作符的支持。添加 了 ChangeStreamSplitLargeEvent 处理大于16 MB 的变更流事件。
2.22 中的新功能
2.22驱动程序版本包括以下新功能:
对 LINQ 3集成的改进和错误修复。
添加了对$set和$vectorSearch聚合阶段的支持。
为Atlas Search添加了同义词支持。
使用加密时减少内存分配。
添加了服务器发现和监控(SDAM) 事件的日志消息。 有关这些事件的更多信息,请参阅 MongoDB SDAM 日志记录和监控规范。
2.21 中的新功能
2.21驱动程序版本包括以下新功能:
对 LINQ 3集成的改进和错误修复。
接受Atlas Search排序、跟踪和评分选项。
支持 Atlas Search embeddedDocument操作符。
为 Atlas Search 索引管理提供 API。
在
ObjectSerializer.DefaultAllowedTypes
方法中接受匿名类型。