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.5 du kitAWS SDK for .NET
La version 3.5 du kit AWS SDK for .NET normalise davantage l'expérience .NET en faisant passer la prise en charge de toutes les variations non-Framework du SDK vers .NET Standard 2.0
Cette rubrique décrit les changements qu’apporte la version 3.5 et le travail que vous pourriez devoir effectuer pour migrer votre environnement ou votre code à partir de la version 3.
Ce qui a changé pour la version 3.5
Nous décrivons ci-dessous ce qui a ou n'a pas changé dans la version 3.5 de AWS SDK for .NET.
.NET Framework et .NET Core
La prise en charge de .NET Framework et .NET Core n'a pas changé.
Xamarin
Les projets Xamarin (nouveaux et existants) doivent cibler .NET Standard 2.0. Consulter Prise en charge de .NET Standard 2.0 dans Xamarin.Forms
Unity
Les applications Unity doivent cibler les profils .NET Standard 2.0 ou .NET 4.x à l'aide d'Unity 2018.1 ou ultérieure. Pour plus d'informations, consultez Prise en charge des profils .NET
Étant donné que Unity prend en charge .NET Standard 2.0, leAWSSDK.Cœurdu kit SDK version 3.5 n'a plus de code spécifique à l'unité, y compris certaines fonctionnalités de niveau pour la version 3.5 du kit SDK Pour assurer une meilleure transition, tous leshéritageLe code Unity est disponible pour référence dans la kitscie/aws-sdk-unity-net
Voir aussi Considérations spéciales relatives au support Unity.
Universal Windows Platform (UWP)
Ciblez votre application UWP vers la version 16299 ou ultérieure
Windows Phone et Silverlight
La version 3.5 du kit AWS SDK for .NET ne prend pas en charge ces plates-formes, car Microsoft ne les développe plus de façon active. Pour plus d'informations, consultez les ressources suivantes :
Bibliothèques de classes portables héritées (PCL basées sur le profil)
Envisagez de recibler votre bibliothèque vers .NET Standard. Pour plus d'informations, consultez Comparaison avec les bibliothèques de classes portables
Amazon Cognito Sync Manager et Amazon Mobile Analytics Manager
Les abstractions de haut niveau qui facilitent l'utilisation de l'utilisation d'Amazon Cognito Sync et d'Amazon Mobile Analytics sont supprimées de la version 3.5 du kitAWS SDK for .NET.AWS AppSyncest la substitution pour Amazon Cognito Sync. Amazon Pinpoint est le remplaçant préféré d'Amazon Mobile Analytics.
Si votre code est affecté par l'absence de code de bibliothèque de haut niveau pourAWS AppSyncet Amazon Pinpoint, vous pouvez signaler votre intérêt pour l'un des éléments suivants ou les deux GitHub Problèmes :https://github.com/aws/dotnet/issues/20
Migration du code synchrone
Version 3.5 du kitAWS SDK for .NETprend en charge .NET Framework et .NET Standard (via les versions de .NET Core comme .NET core 3.1, .NET 5, etc.). Les variantes du SDK conformes à .NET Standard ne fournissent que des méthodes asynchrones. Par conséquent, si vous souhaitez tirer parti de .NET Standard, vous devez modifier le code synchrone afin qu'il s'exécute de manière asynchrone.
Les extraits de code suivants montrent comment vous pouvez transformer le code synchrone en code asynchrone. Le code de ces extraits est utilisé pour afficher le nombre de compartiments Amazon S3.
Les appels de code d'origineListBuckets.
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}");
Pour utiliser la version 3.5 du kit SDK, appelezListBucketsAsyncet non.
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}");