A versão 4 (V4) do AWS SDK para .NET foi lançada!
Para começar a usar a nova versão do SDK, consulte o Guia do desenvolvedor AWS SDK para .NET (V4), especialmente o tópico sobre migração para a versão 4.
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 do AWS SDK para .NET
Este tópico descreve as alterações na versão 3 do AWS SDK para .NET e como migrar o seu código para esta versão do SDK.
Sobre as versões do AWS SDK para .NET
O AWS SDK para .NET, lançado originalmente em novembro de 2009, foi projetado para o .NET Framework 2.0. Desde o lançamento, o .NET foi aperfeiçoado com o .NET Framework 4.0 e o .NET Framework 4.5, e adicionou novas plataformas de destino: WinRT e Windows Phone.
AWS SDK para .NETA versão 2 do foi atualizada para aproveitar os novos recursos da plataforma .NET e para atingir o WinRT e o Windows Phone.
AWS SDK para .NETA versão 3 do foi atualizada para tornar os conjuntos modulares.
Redefinição da arquitetura para o SDK
Toda a versão 3 do AWS SDK para .NET está redefinida para ser modular. Agora, cada serviço está implementado em seu próprio conjunto, em vez de um único conjunto global. Não é mais necessário adicionar todo o AWS SDK para .NET ao aplicativo. Adicione conjuntos somente para os serviços da AWS utilizados pelo aplicativo.
Alterações que podem causar interrupções
As seções a seguir descrevem as alterações na versão 3 do AWS SDK para .NET.
AWSClientFactory removida
A classe Amazon.AWSClientFactory foi removida. Agora, para criar um cliente de serviço, use o construtor do cliente de serviço. Por exemplo, para criar um AmazonEC2Client:
var ec2Client = new Amazon.EC2.AmazonEC2Client();
Amazon.Runtime.AssumeRoleAWSCredentials removida
A classe Amazon.Runtime.AssumeRoleAWSCredentials foi removida pois estava em um namespace central, mas tinha uma dependência no AWS Security Token Service, e porque era obsoleta no SDK por algum tempo. No lugar, use a classe Amazon.SecurityToken.AssumeRoleAWSCredentials.
Método SetACL removido da S3Link
A classe S3Link faz parte do pacote Amazon.DynamoDBv2 e é usada para armazenar objetos no Amazon S3 que são referências em um item do DynamoDB. Este é um atributo útil, mas não queríamos criar uma dependência de compilação no pacote Amazon.S3 para o DynamoDB. Consequentemente, simplificamos os métodos Amazon.S3 expostos da classe S3Link, substituindo o método SetACL pelo método MakeS3ObjectPublic. Para obter mais controle sobre a lista de controle de acesso (ACL) no objeto, use o pacote Amazon.S3 diretamente.
Remoção de classes de resultados obsoletas
Para a maioria dos serviços do AWS SDK para .NET, as operações retornam um objeto de resposta que contém metadados para a operação, como o ID da solicitação e um objeto de resultado. Ter classes de resultados e respostas separadas era redundante e gerava linhas extras para os desenvolvedores. Na versão 2 do AWS SDK para .NET, colocamos todas as informações da classe de resultados na classe de respostas. Também marcamos as classes de resultados como obsoletas para desencorajar o seu uso. Na versão 3 do AWS SDK para .NET, removemos essas classes de resultados obsoletas para ajudar a reduzir o tamanho do SDK.
Alterações na seção AWS Config
É possível realizar a configuração avançada do AWS SDK para .NET por meio dos arquivos App.config ou Web.config. Faça isso por meio de uma seção de configuração da <aws> como a seguinte, que faz referência ao nome do conjunto do SDK.
<configuration> <configSections> <section name="aws" type="Amazon.AWSSection, AWSSDK"/> </configSections> <aws region="us-west-2"> <logging logTo="Log4Net"/> </aws> </configuration>
Na versão 3 do AWS SDK para .NET, o conjunto AWSSDK não existe mais. Colocamos o código comum no conjunto AWSSDK.Core. Como resultado, será necessário alterar as referências ao conjunto AWSSDK nos arquivos App.config ou Web.config para o conjunto AWSSDK.Core, como mostrado a seguir.
<configuration> <configSections> <section name="aws" type="Amazon.AWSSection, AWSSDK.Core"/> </configSections> <aws region="us-west-2"> <logging logTo="Log4Net"/> </aws> </configuration>
Também é possível manipular as definições de configuração com a classe Amazon.AWSConfigs. Na versão 3 do AWS SDK para .NET, movemos as definições de configuração do DynamoDB da classe Amazon.AWSConfigs para a classe Amazon.AWSConfigsDynamoDB.