Atualizar versões do driver
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:
Certifique-se de que a nova versão seja compatível com as versões do MongoDB Server às quais seu aplicação se conecta e com a versão da estrutura .NET em que seu aplicação é executado. Consulte a página Compatibilidade do driver .NET/C# para obter essas informações.
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 MongoDB Server, consulte a seção Alterações de compatibilidade da versão do servidor.
Dica
Para minimizar o número de alterações que seu aplicativo pode exigir ao atualizar versões de drivers no futuro, use a API Stable.
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
Render
nos 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
ObjectSerializer
só permite a desserialização dos tipos que são considerados seguros. Se não for especificado de outra forma, oObjectSerializer
utiliza 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
LinqProvider
foi alterado para LINQ3. OLinqProvider
pode ser configurado para LINQ2 emMongoClientSettings
como 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
slave0k
foi removida; a opçãoreadPreference
agora é 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 de compatibilidade.
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.