Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Migration auf -Version 3.5AWS SDK for .NET
Version 3.5 des AWS SDK for .NET standardisiert die .NET-Erfahrung weiter, indem die Unterstützung für alle nicht dem Framework zugehörigen Varianten des SDK auf .NET Standard 2.0
In diesem Thema werden die Änderungen in Version 3.5 und mögliche Arbeiten beschrieben, die Sie eventuell durchführen müssen, wenn Sie Ihre Umgebung oder den Codes von Version 3 migrieren möchten.
Was hat sich für Version 3.5 geändert
Im Folgenden wird beschrieben, was sich in AWS SDK for .NET-Version 3.5 geändert hat und was nicht.
.NET Framework und .NET Core
Unterstützung für .NET Framework und .NET Core hat sich nicht geändert.
Xamarin
Xamarin-Projekte (neu und vorhanden) müssen auf .NET Standard 2.0 ausgerichtet werden. Weitere Informationen finden Sie unter Standard .NET 2.0-Unterstützung in Xamarin.Forms
Unity
Unity-Apps müssen auf .NET Standard 2.0- oder .NET 4.x-Profile mit Unity 2018.1 oder höher ausgerichtet werden. Weitere Informationen finden Sie unter .NET-Profilunterstützung
Da Unity .NET Standard 2.0 unterstützt,AWSSDK.Core-Paket der SDK-Version 3.5 enthält keinen Unity-spezifischen Code mehr. Dies schließt eine gewisse allgemeine Funktionalität ein. Um einen besseren Übergang zu ermöglichen, müssen alleErbeUnity-Code steht als Referenz inaw/aws-sdk-unity-net
Lesen Sie auch Besondere Überlegungen zur Unity-Unterstützung.
Universal Windows Platform (UWP)
Richten Sie Ihre UWP-Anwendung auf Version 16299 oder höher
Windows Phone und Silverlight
Version 3.5 der AWS SDK for .NET unterstützt diese Plattformen nicht, da Microsoft sie nicht mehr aktiv entwickelt. Weitere Informationen finden Sie unter:
Ältere tragbare Klassenbibliotheken (profilbasierte PCL)
Ziehen Sie die erneute Ausrichtung Ihrer Bibliothek auf .NET Standard in Erwägung. Weitere Informationen finden Sie unter Vergleich mit Portable Class Libraries
Amazon Cognito Sync Manager und Amazon Mobile Analytics Manager
Allgemeine Abstraktionen, die die Verwendung von Amazon Cognito Sync und Amazon Mobile Analytics erleichtern, werden aus -Version 3.5AWS SDK for .NET.AWS AppSyncist der bevorzugte Ersatz für Amazon Cognito Sync. Amazon Pinpoint ist der bevorzugte Ersatz für Amazon Mobile Analytics.
Wenn Ihr Code vom Fehlen von allgemeinem Bibliothekscode für betroffen istAWS AppSyncund Amazon Pinpoint haben, können Sie Ihr Interesse an einer oder beiden der folgenden Aktionen angeben GitHub probleme:https://github.com/aws/dotnet/issues/20
Migrieren von synchronem Code
Version 3.5 desAWS SDK for .NETunterstützt sowohl .NET Framework als auch .NET Standard (über .NET Core-Versionen wie .NET Core 3.1, .NET 5 usw.). Varianten des SDK, die dem .NET-Standard entsprechen, bieten nur asynchrone Methoden. Wenn Sie also .NET Standard nutzen möchten, müssen Sie den synchronen Code so ändern, dass er asynchron ausgeführt wird.
Die folgenden Codeausschnitte zeigen, wie Sie synchronen Code in asynchronen Code ändern können. Der Code in diesen Ausschnitten wird verwendet, um die Anzahl der Amazon S3 S3-Buckets anzuzeigen.
Der ursprüngliche Code ruftListBuckets.
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}");
Zur Verwendung von Version 3.5 des SDK rufen SieListBucketsAsyncstattdessen.
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}");