Migration vers la version 3 du kit AWS SDK for .NET - AWS SDK for .NET

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Migration vers la version 3 du kit AWS SDK for .NET

Cette rubrique décrit les modifications apportées à la version 3 du AWS SDK for .NET et explique comment migrer votre code vers cette version du kit SDK.

À propos des versions du AWS SDK for .NET

Le AWS SDK for .NET, initialement lancé en novembre 2009, était conçu pour .NET Framework 2.0. Depuis cette version, .NET s'est amélioré avec .NET Framework 4.0 et .NET Framework 4.5, ciblant de nouvelles plateformes : WinRT et Windows Phone.

Le AWS SDK for .NET version 2 a été mis à jour pour tirer parti des nouvelles fonctions de la plateforme .NET et pour cibler WinRT et Windows Phone.

Le AWS SDK for .NET version 3 a été mis à jour pour rendre les assemblies modulaires.

Refonte de l'architecture du kit SDK

La version 3 du AWS SDK for .NET a été entièrement repensée pour devenir modulaire. Chaque service est désormais implémenté dans son propre assembly, et non dans un seul et même assembly global. Vous n'avez plus besoin d'ajouter l'intégralité du AWS SDK for .NET à votre application. Vous pouvez désormais ajouter des assemblies uniquement pour le kitAWSservices que votre application utilise.

Évolutions

Les sections suivantes décrivent les modifications apportées à la version 3 du AWS SDK for .NET.

Suppression d'AWSClientFactory

La classe Amazon.AWSClientFactory a été supprimée. Désormais, pour créer le client d'un service, utilisez le constructeur correspondant. Par exemple, pour créer un AmazonEC2Client :

var ec2Client = new Amazon.EC2.AmazonEC2Client();

Suppression d'Amazon.Runtime.AssumeRoleAWSCredentials

La classe Amazon.Runtime.AssumeRoleAWSCredentials a été supprimée car, bien que se trouvant dans un espace de noms de base, elle présentait une dépendance vis-à-vis d'AWS Security Token Service. Par ailleurs, elle était obsolète dans le kit SDK depuis un certain temps. Utilisez plutôt la classe Amazon.SecurityToken.AssumeRoleAWSCredentials.

Suppression de la méthode SetACL de S3Link

LeS3LinkLa classe fait partie d'Amazon.DynamoDBv2et sert à stocker dans Amazon S3 qui font état de références dans un élément DynamoDB. En raison de son utilité, nous ne voulions pas que cette fonction crée une dépendance de compilation dans leAmazon.S3package pour DynamoDB. C'est pourquoi nous avons simplifié les méthodes Amazon.S3 exposées de la classe S3Link, remplaçant la méthode SetACL par la méthode MakeS3ObjectPublic. Pour exercer un plus grand contrôle sur la liste de contrôle d'accès (ACL) de l'objet, utilisez directement le package Amazon.S3.

Suppression de classes de résultat obsolètes

Pour la plupart des services sollicités dans les opérations du AWS SDK for .NET, les opérations renvoient un objet de réponse qui contient les métadonnées de l'opération, telles que l'ID de demande et un objet de résultat. La présence à la fois d'une classe de réponse et d'une classe de résultat était redondante et exigeait plus de saisies des développeurs. Dans la version 2 du AWS SDK for .NET, nous avons intégré toutes les informations de la classe de résultat dans la classe de réponse. De même, nous avons marqué les classes de résultat comme étant obsolètes pour dissuader leur utilisation. Dans la version 3 du AWS SDK for .NET, nous avons supprimé ces classes de résultat obsolètes pour contribuer à réduire la taille du kit SDK.

AWSModifications apportées à la section de configuration

Il est possible d'effectuer une configuration avancée du AWS SDK for .NET via le fichier App.config ou Web.config. Cette opération s'effectue via une section de configuration <aws> telle que celle illustrée ci-dessous, qui fait référence au nom d'assembly du SDK.

<configuration> <configSections> <section name="aws" type="Amazon.AWSSection, AWSSDK"/> </configSections> <aws region="us-west-2"> <logging logTo="Log4Net"/> </aws> </configuration>

Dans la version 3 du AWS SDK for .NET, l'assembly AWSSDK n'existe plus. Nous avons intégré le code commun dans l'assembly AWSSDK.Core. De ce fait, vous devrez remplacer les références à l'assembly AWSSDK dans votre fichier App.config ou Web.config par des références à l'assembly AWSSDK.Core, comme suit.

<configuration> <configSections> <section name="aws" type="Amazon.AWSSection, AWSSDK.Core"/> </configSections> <aws region="us-west-2"> <logging logTo="Log4Net"/> </aws> </configuration>

Vous pouvez également manipuler les paramètres de configuration à l'aide de la classe Amazon.AWSConfigs. Dans la version 3 du kitAWS SDK for .NET, nous avons déplacé les paramètres de configuration de DynamoDB depuis leAmazon.AWSConfigsclasse vers leAmazon.AWSConfigsDynamoDBclasse.