Overview
Esta página describe los cambios que podrías necesitar hacer a tu aplicación cuando actualices el Driver .NET/C# a la versión 2.x.
Cómo actualizar
Cada sección de esta página enumera los posibles cambios disruptivos introducidos por una versión del driver. Para actualizar el Driver .NET/C# a la versión 2.x, sigue estos pasos:
Revisa la página de compatibilidad para garantizar que la nueva versión del driver sea compatible con las versiones del MongoDB Server a las que se conecta tu aplicación y con la versión de .NET o del Marco .NET en la que se ejecuta tu aplicación.
Aborde cualquier cambio disruptivo entre la versión del controlador que su aplicación utiliza y su versión de actualización objetivo en la sección Cambios importantes por versión.
Ejemplo
Si estás actualizando el driver de la v2.14 a la v2.21, aborda todos los cambios disruptivos a partir de la versión después de la v2.14 (v2.19), incluyendo cualquier cambio para la v2.21.
Cambios disruptivos por versión
Las siguientes secciones describen los posibles cambios disruptivos introducidos por cada versión del driver. Si una versión del driver no está incluida en esta sección, no introduce ningún cambio disruptivo.
Versión 2.28.0 cambio disruptivo
El controlador utiliza un nombramiento fuerte para todos los componentes del controlador. Si su aplicación tiene dependencias que hacen referencia a varias versiones del controlador .NET/C#, debe crear redirecciones de enlaces, como se muestra en el siguiente ejemplo:
<configuration> <runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="MongoDB.Driver" publicKeyToken="94992a530f44e321" culture="neutral" /> <bindingRedirect oldVersion="2.28.0.0" newVersion="<version number to use>" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="MongoDB.Bson" publicKeyToken="94992a530f44e321" culture="neutral" /> <bindingRedirect oldVersion="2.28.0.0" newVersion="<version number to use>" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="MongoDB.Driver.Core" publicKeyToken="94992a530f44e321" culture="neutral" /> <bindingRedirect oldVersion="2.28.0.0" newVersion="<version number to use>" /> </dependentAssembly> </assemblyBinding> </runtime> </configuration>
Versión 2.21.0 cambio disruptivo
El driver cambia la signatura de los métodos
Renderen los desarrolladores de MongoDB Search. En versiones anteriores del controlador, estos métodos tenían la siguiente firma:Render(IBsonSerializer<TDocument> documentSerializer, IBsonSerializerRegistry serializerRegistry); En la versión 2.21.0 y posteriores, los métodos
Rendertienen la siguiente firma:Render(SearchDefinitionRenderContext<TDocument> renderContext);
Versión 2.19.0 cambio disruptivo
El
ObjectSerializersolo permite la deserialización de tipos que se consideran seguros. Si no se especifica de otro modo, elObjectSerializerutiliza los tipos devueltos porObjectSerializer.DefaultAllowedTypes.Para obtener más información sobre
ObjectSerializer, visita las Preguntas frecuentes. Para obtener más información sobreDefaultAllowedTypes, visita la Documentación de la API.El
LinqProviderpor defecto se ha cambiado a LINQ3. ElLinqProviderpuede configurarse para LINQ2 enMongoClientSettings, como se muestra en el siguiente ejemplo de código:var connectionString = "<connection string>"; var clientSettings = MongoClientSettings .FromConnectionString(connectionString); clientSettings.LinqProvider = LinqProvider.V2; var client = new MongoClient(clientSettings); Si su aplicación utiliza el proveedor LINQ3, no puede usar
-1para representar el operador posicional al actualizar un arreglo. Para saber cómo usar el operador posicional, consulta Actualizar uno y Actualizar varios.
Versión 2.14.0 Cambios disruptivos
El controlador deja de soportar MongoDB Server v3.4 y versiones anteriores. Debes actualizar tu servidor MongoDB a la versión v3.6 o posterior.
Para aprender a actualizar tu implementación de MongoDB Server, consulta las notas de versión en el manual de MongoDB Server. Para obtener más información sobre la compatibilidad entre el driver .NET/C# y el servidor MongoDB, consulta la página Compatibilidad.
El controlador deja de ser compatible con la versión4.5.2 y anteriores de .NET framework. Tu aplicación debe utilizar el framework .NET v4.7.2 o posterior, .NET Core 2.x o posterior, o .NET 5 o posterior.
Para saber más sobre la compatibilidad entre el driver .NET/C# y .NET, consulte la página de Compatibilidad.
El driver deja de dar soporte a .NET Standard v1.5. Tu aplicación debe usar .NET Standard v2.0 o posterior.