Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Migración a la versión 3 de la AWS SDK for .NET
En este tema se describen los cambios en la versión 3 del AWS SDK for .NET y cómo migrar su código a esta versión del SDK.
Acerca de las versiones del AWS SDK for .NET
El AWS SDK for .NET, lanzado originalmente en noviembre de 2009, se diseñó para .NET Framework 2.0. Desde entonces, .NET se ha mejorado con .NET Framework 4.0 y .NET Framework 4.5, y se han añadido nuevas plataformas de destino: WinRT y Windows Phone.
AWS SDK for .NET versión 2 se actualizó para beneficiarse de las nuevas características de la plataforma .NET y centrarse en WinRT y Windows Phone.
AWS SDK for .NET versión 3 se actualizó para que los ensamblados sean modulares.
Rediseño de la arquitectura del SDK
Toda la versión 3 del AWS SDK for .NET se ha rediseñado para que sea modular. Ahora cada servicio se implementa en su propio ensamblado, en lugar de en un ensamblado global. Ya no es necesario que añada todo el AWS SDK for .NET en su aplicación. Ahora puede agregar ensamblados solo para los servicios de AWS que su aplicación utiliza.
Cambios bruscos
En las siguientes secciones se describen cambios de la versión 3 del AWS SDK for .NET.
AWSClientFactory eliminada
Se ha eliminado la clase Amazon.AWSClientFactory
. Ahora, para crear un cliente de servicio debe utilizar el constructor del cliente de servicio. Por ejemplo, para crear un AmazonEC2Client
:
var ec2Client = new Amazon.EC2.AmazonEC2Client();
Amazon.Runtime.AssumeRoleAWSCredentials eliminada
Se ha eliminado la clase Amazon.Runtime.AssumeRoleAWSCredentials
porque estaba en un espacio de nombres central pero era dependiente de AWS Security Token Service y porque ya estaba obsoleta en el SDK desde hacía tiempo. En su lugar, utilice la clase Amazon.SecurityToken.AssumeRoleAWSCredentials
.
Método SetACL eliminado de S3Link
La clase S3Link
forma parte del paquete Amazon.DynamoDBv2
, y se utiliza para almacenar objetos en Amazon S3 que son referencias en un elemento de DynamoDB. Se trata de una característica útil, pero no queríamos crear una dependencia de compilación en el paquete Amazon.S3
para DynamoDB. En consecuencia, hemos simplificado los métodos Amazon.S3
expuestos de la clase S3Link
reemplazando el método SetACL
por el método MakeS3ObjectPublic
. Para obtener más control sobre la lista de control de acceso (ACL) en el objeto, utilice el paquete Amazon.S3
directamente.
Eliminación de clases de resultado obsoletas
Para la mayoría de servicios en el AWS SDK for .NET, las operaciones devuelven un objeto de respuesta que contiene metadatos para la operación, como el ID de la solicitud y un objeto de resultado. Disponer de una respuesta separada y de una clase de resultado era redundante y generaba más trabajo para los desarrolladores. En la versión 2 del AWS SDK for .NET, incluimos toda la información de la clase de resultado en la clase de respuesta. También marcamos las clases de resultado como obsoletas para evitar que se utilizaran. En la versión 3 del AWS SDK for .NET, eliminamos estas clases de resultado obsoletas para reducir el tamaño del SDK.
Cambios en la sección de AWS Config
Se puede realizar una configuración avanzada del AWS SDK for .NET mediante el archivo App.config
o Web.config
. Para ello puede utilizar una sección de configuración <aws>
, como la que se muestra a continuación, que hace referencia al nombre del ensamblado del SDK.
<configuration> <configSections> <section name="aws" type="Amazon.AWSSection, AWSSDK"/> </configSections> <aws region="us-west-2"> <logging logTo="Log4Net"/> </aws> </configuration>
En la versión 3 del AWS SDK for .NET, el ensamblado AWSSDK
ya no existe. Hemos colocado el código común en el ensamblado AWSSDK.Core
. En consecuencia, deberá modificar las referencias al ensamblado AWSSDK
en su archivo App.config
o Web.config
por el ensamblado AWSSDK.Core
, de la siguiente manera.
<configuration> <configSections> <section name="aws" type="Amazon.AWSSection, AWSSDK.Core"/> </configSections> <aws region="us-west-2"> <logging logTo="Log4Net"/> </aws> </configuration>
También puede manipular las opciones de configuración con la clase Amazon.AWSConfigs
. En la versión 3 de AWS SDK for .NET, hemos trasladado las opciones de configuración de DynamoDB de la clase Amazon.AWSConfigs
a la clase Amazon.AWSConfigsDynamoDB
.