Overview
En esta sección, puedes identificar los cambios esenciales que debes realizar en tu aplicación cuando actualices tu proveedor a una nueva versión.
Antes de actualizar, realiza las siguientes acciones:
Asegúrate de que la nueva versión sea compatible con la versión del servidor de MongoDB a la que se conecta tu aplicación y con la versión de .NET en la que funciona tu aplicación. Ver el Compatibilidad página para esta información.
Resuelve cualquier cambio disruptivo entre la versión actual del proveedor que utiliza tu aplicación y la versión de actualización planificada en la sección Cambios disruptivos.
cambio disruptivo
Un cambio disruptivo es una modificación de una convención o comportamiento a partir de una versión específica del proveedor. Este tipo de cambio puede evitar que tu aplicación funcione correctamente si no se aborda antes de actualizar el proveedor.
Los cambios disruptivos de esta sección están categorizados según la versión del proveedor que los introdujo. Al actualizar las versiones del proveedor, resuelva todos los cambios disruptivos entre la versión actual y la versión de actualización. Por ejemplo, si está actualizando el proveedor de la versión v8.0 a v8.5, aborde todos los cambios disruptivos desde la versión posterior a v8.0, incluyendo todos los enumerados en la versión8.5.
Versión 8.1.0 cambio disruptivo
Se actualizó el proveedor de EF Core para ejecutar todos los cambios como transacciones de MongoDB. Si su aplicación utiliza MongoDB Server de una versión anterior a la v5.0, o no se ejecuta en un set de réplicas, tienes que hacer los siguientes cambios en tu aplicación:
Si tu aplicación está configurada para una versión anterior a MongoDB Server v5.0, debes actualizar a MongoDB Server v5.0 o posterior.
Si tu aplicación se ejecuta en un servidor independiente, debes reconfigurar tu servidor independiente en un set de réplicas de instancia única. Para obtener más información sobre cómo reconfigurar tu servidor autónomo, consulta Convertir un mongod autogestionado autónomo en un set de réplicas en el manual de MongoDB Server.
Si su aplicación se ejecuta en un entorno de contenedores, cambie a un contenedor de set de réplicas de instancia única si hay uno disponible.
Para evitar problemas de snapshot durante las transacciones, llama al
EnsureCreated()oEnsureCreatedAsync()método durante el inicio de su aplicación, en lugar de crear la colección o base de datos de manera implícita.Nota
Llamar al método
EnsureCreated()oEnsureCreatedAsync()arroja un error si tu aplicación se ejecuta en un clúster compartido. Las aplicaciones que se ejecutan en clusters gratuitos y compartidos no deben llamar a estos métodos.Si no quieres asegurar concurrencia optimista con transacciones, puedes desactivar las transacciones automáticas configurando
Database.AutoTransactionBehavior = AutoTrasactionBehavior.Neveren tu subclaseDbContextdurante la configuración de la aplicación.El formato de almacenamiento por defecto de GUID se cambió del formato binario
CSharpLegacyal formatoStandard. Si tu base de datos contiene GUID existentes que no están en formatoStandard, recomendamos convertirlos al formatoStandard.El
CamelCaseElementNameConventionconvierte las reglas de mayúsculas y minúsculas de las entidades propias según el nombre de su propiedad en lugar de su nombre de clase. Si la aplicación utiliza laCamelCaseElementNameConvention, la forma en que se escriben los datos puede cambiar.
Para obtener más información sobre los cambios disruptivos en esta versión, consulte la sección Cambios disruptivos del repositorio del proveedor en GitHub.