As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Migrar para a versão 3.5 do AWS SDK for .NET
A versão 3.5 do AWS SDK for .NET padroniza ainda mais a experiência do .NET fazendo a transição do suporte para todas as variações que não sejam do Framework do SDK para o .NET Standard 2.0
Este tópico descreve as alterações na versão 3.5 e o possível trabalho que talvez seja necessário para migrar seu ambiente ou código da versão 3.
O que mudou na versão 3.5
Veja a seguir o que mudou ou não no AWS SDK for .NET versão 3.5.
.NET Framework e .NET Core
O suporte ao .NET Framework e ao .NET Core não foi alterado.
Xamarin
Os projetos Xamarin (novos e existentes) devem ter como destino o .NET Standard 2.0. Consulte Suporte do .NET Standard 2.0 no Xamarin.Forms
Unity
Os aplicativos Unity devem ter como destino os perfis do .NET Standard 2.0 ou do .NET 4.x usando o Unity 2018.1 ou posterior. Para obter mais informações, consulte Suporte a perfis do .NET
Como o Unity oferece suporte ao .NET Standard 2.0, o pacote AWSSDK.Core do SDK versão 3.5 não tem mais código específico do Unity, incluindo algumas funcionalidades de nível superior. Para proporcionar uma transição melhor, todo o código legado do Unity está disponível para referência no repositório aws/aws-sdk-unity-net
Também consulte Considerações especiais sobre o suporte ao Unity.
Plataforma Universal do Windows (UWP)
Dirija seu aplicativo UWP para a versão 16299 ou posterior
Windows Phone e Silverlight
A versão 3.5 do AWS SDK for .NET não oferece suporte a essas plataformas porque a Microsoft não está mais desenvolvendo-as ativamente. Para obter mais informações, consulte as informações a seguir.
Bibliotecas de classes portáteis legadas (PCLs baseadas em perfis)
Considere redirecionar sua biblioteca para o .NET Standard. Para obter mais informações, consulte Comparação com bibliotecas de classes portáteis
Gerente do Amazon Cognito Sync e Gerente do Amazon Mobile Analytics
As abstrações de alto nível que facilitam o uso do Amazon Cognito Sync e do Amazon Mobile Analytics foram removidas da versão 3.5 do AWS SDK for .NET. AWS AppSync é o substituto preferencial para o Amazon Cognito Sync. O Amazon Pinpoint é o substituto preferencial do Amazon Mobile Analytics.
Se o seu código for afetado pela falta de código de biblioteca de nível superior para o AWS AppSync e o Amazon Pinpoint, você poderá registrar seu interesse em um ou ambos os seguintes chamados do GitHub: https://github.com/aws/dotnet/issues/20
Migrar código síncrono
A versão 3.5 do AWS SDK for .NET oferece suporte tanto para o .NET Framework quanto para o .NET Standard (por meio de versões do .NET Core, como o .NET core 3.1, .NET 5 e assim por diante). As variações do SDK que estão em conformidade com o .NET Standard fornecem somente métodos assíncronos, portanto, se você quiser aproveitar o .NET Standard, deverá alterar o código síncrono para que ele seja executado de forma assíncrona.
Os trechos de código a seguir mostram como alterar o código síncrono para código assíncrono. O código nesses trechos é usado para exibir o número de buckets do Amazon S3.
O código original chama ListBuckets.
private static ListBucketsResponse MyListBuckets() { var s3Client = new AmazonS3Client(); var response = s3Client.ListBuckets(); return response; } // From the calling function ListBucketsResponse response = MyListBuckets(); Console.WriteLine($"Number of buckets: {response.Buckets.Count}");
Para usar a versão 3.5 do SDK, chame ListBucketsAsync.
private static async Task<ListBucketsResponse> MyListBuckets() { var s3Client = new AmazonS3Client(); var response = await s3Client.ListBucketsAsync(); return response; } // From an **asynchronous** calling function ListBucketsResponse response = await MyListBuckets(); Console.WriteLine($"Number of buckets: {response.Buckets.Count}"); // OR From a **synchronous** calling function Task<ListBucketsResponse> response = MyListBuckets(); Console.WriteLine($"Number of buckets: {response.Result.Buckets.Count}");