Visão geral
Nesta seção, você pode identificar as alterações essenciais que devem ser feitas no seu aplicativo ao atualizar seu driver para uma nova versão.
Antes de atualizar, execute as seguintes ações:
Ensure the new version is compatible with the MongoDB Server versions your application connects to and the .NET framework version your application runs on. See the .NET/C# Driver Compatibility page for this information.
Resolva quaisquer alterações interruptivas entre a versão atual do driver que seu aplicativo está usando e a versão de atualização planejada na seção alterações interruptivas. Para saber mais sobre as alterações de compatibilidade da versão do Servidor MongoDB, consulte a seção Alterações de compatibilidade da versão do servidor.
Dica
To minimize the number of changes your application may require when upgrading driver versions in the future, use the Stable API.
Mudanças de última hora
Uma alteração interruptiva é uma modificação de uma convenção ou de um comportamento que começa em uma versão específica do driver. Esse tipo de alteração pode impedir que seu aplicativo funcione corretamente se não for resolvido antes de atualizar o driver.
As alterações interruptivas nesta seção são categorizadas pela versão do driver que as introduziram. Ao atualizar as versões do driver, resolva todas as alterações interruptivas entre a versão atual e a atualizada. Por exemplo, se você estiver atualizando o driver de v2.0 para v2.20, resolva todas as alterações interruptivas da versão após v2.0 incluindo qualquer um listado em v2.20.
Versão 2.28.0 Possível mudança significativa
Todos os componentes do driver .NET/C# têm um nome forte. Se você estiver usando a versão 2.28 ou posterior do driver e seu aplicativo tiver dependências que façam referência a várias versões do driver .NET/C#, será necessário criar redirecionamentos de associação, conforme mostrado no exemplo a seguir:
<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>
Versão 2.21.0 Alterações interruptivas
A assinatura de função dos métodos
Rendernos construtores do Atlas Search foi alterada. O seguinte trecho de código mostra a assinatura da função antes da alteração e depois da alteração:// Render function signature prior to v2.21.0 Render(IBsonSerializer<TDocument> documentSerializer, IBsonSerializerRegistry serializerRegistry); // Render function signature in v2.21.0 and later Render(SearchDefinitionRenderContext<TDocument> renderContext);
Versão 2.19.0 Alterações interruptivas
O
ObjectSerializersó permite a desserialização dos tipos que são considerados seguros. Se não for especificado de outra forma, oObjectSerializerutiliza os tipos retornados peloObjectSerializer.DefaultAllowedTypes.Para saber mais sobre o
ObjectSerializer, visite as Perguntas frequentes. Para obter mais informações sobreDefaultAllowedTypes, acesse a documentação da API.O padrão
LinqProviderfoi alterado para LINQ3. OLinqProviderpode ser configurado para LINQ2 emMongoClientSettingscomo mostrado no exemplo de código a seguir:var connectionString = "<connection string>"; var clientSettings = MongoClientSettings .FromConnectionString(connectionString); clientSettings.LinqProvider = LinqProvider.V2; var client = new MongoClient(clientSettings);
alteração interruptiva na versão 2.14.0
Essa versão do driver MongoDB .NET/C# removeu a compatibilidade com .NET framework v4.5.2 ou anterior; o framework.NET mínimo compatível é v4.7.2.
Esta versão do driver MongoDB .NET/C# não suporta o .NET Standard v1.5; o .NET Standard mínimo suportado é v2.0.
Versão 2.13.0 Alterações interruptivas
A opção de connection string do
slave0kfoi removida; a opçãoreadPreferenceagora é usada.
Alterações na compatibilidade da versão do servidor
Uma alteração de compatibilidade de versão do servidor é uma modificação no driver .NET/C# do MongoDB que descontinua o suporte para um conjunto de versões do MongoDB Server.
O driver interrompe o suporte para uma versão do Servidor MongoDB após atingir o fim da vida útil (EOL).
Para saber mais sobre o suporte MongoDB para produtos EOL, consulte a Política de Suporte Legado.
Para saber mais sobre a compatibilidade entre as versões do driver .NET/C# e as versões do MongoDB Server, visite a página Compatibilidade.
Versão do servidor 8.1 Mudanças no suporte
Você não pode usar as versões v2.14.1 ou anteriores do driver .NET/C# para se conectar a uma implementação que esteja executando o MongoDB Server v8.1. A partir do MongoDB Server v8.1, o comando buildinfo requer autenticação, causando uma incompatibilidade com essas versões do driver.
Versão 2.14 Alterações na compatibilidade com a versão
O driver v2.14 descarta o suporte para o MongoDB Server v3.4 e anteriores. Para usar qualquer driver da v2.14 e posteriores, seu MongoDB Server deve estar na v3.6 ou posterior.
Para saber como atualizar seu MongoDB Server, consulte Notas da versão no manual do MongoDB Server.