Migrasi ke versi 3.5 dariAWS SDK for .NET - AWS SDK for .NET

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Migrasi ke versi 3.5 dariAWS SDK for .NET

Versi 3.5AWS SDK for .NETselanjutnya menstandarisasi pengalaman .NET dengan mentransisikan dukungan untuk semua variasi Non-framework SDK ke.NET Standar 2.0. Bergantung pada lingkungan dan basis kode Anda, untuk memanfaatkan fitur versi 3.5, Anda mungkin perlu melakukan pekerjaan migrasi tertentu.

Topik ini menjelaskan perubahan dalam versi 3.5 dan kemungkinan pekerjaan yang mungkin perlu Anda lakukan untuk memigrasi lingkungan atau kode Anda dari versi 3.

Apa yang berubah untuk versi 3.5

Berikut ini menjelaskan apa yang telah atau belum berubah diAWS SDK for .NETversi 3.5.

NET Framework dan .NET Inti

Support untuk .NET Framework dan .NET Core tidak berubah.

Xamarin

Proyek Xamarin (baru dan yang sudah ada) harus menargetkan .NET Standard 2.0. Lihat.NET Standar 2.0 Support di Xamarin.FormsdanDukungan implementasi .NET.

Unity

Aplikasi Unity harus menargetkan profil .NET Standard 2.0 atau .NET 4.x menggunakan Unity 2018.1 atau yang lebih baru. Untuk informasi selengkapnya, lihatDukungan profil .NET. Selain itu, jika Anda menggunakanIL2CPPuntuk membangun, Anda harus menonaktifkan pengupasan kode dengan menambahkanlink.xmlfile, seperti yang dijelaskan dalamMereferensikanAWS SDK for .NETStandar 2.0 dari Unity, Xamarin, atau UWP. Setelah Anda mem-port kode ke salah satu basis kode yang direkomendasikan, aplikasi Unity Anda dapat mengakses semua layanan yang ditawarkan oleh SDK.

Karena Unity mendukung .NET Standard 2.0,AWSSDK.Corepaket SDK versi 3.5 tidak lagi memiliki kode khusus Unity, termasuk beberapa fungsionalitas tingkat yang lebih tinggi. Untuk memberikan transisi yang lebih baik, semuawarisanKode Unity tersedia untuk referensi diaws/aws-sdk-unity-net GitHub repositori. Jika Anda menemukan fungsionalitas yang hilang yang memengaruhi penggunaan AndaAWSdengan Unity, Anda dapat mengajukan permintaan fitur dihttps://github.com/aws/dotnet/issues.

Lihat jugaPertimbangan khusus untuk dukungan Unity.

Platform Windows Universal (UWP)

Targetkan aplikasi UWP Anda keversi 16299 atau yang lebih baru(Pembaruan Fall Creators, versi 1709, dirilis Oktober 2017).

Windows Phone dan Silverlight

Versi 3.5AWS SDK for .NETtidak mendukung platform ini karena Microsoft tidak lagi aktif mengembangkannya. Untuk informasi selengkapnya, lihat yang berikut:

Pustaka kelas portabel lama (PCL berbasis profil)

Pertimbangkan penargetan ulang perpustakaan Anda ke .NET Standard. Untuk informasi selengkapnya, lihatPerbandingan dengan Pustaka Kelas Portabeldari Microsoft.

Manajer Sinkronisasi Amazon Cognito dan Manajer Amazon Mobile Analytics

Abstraksi tingkat tinggi yang memudahkan penggunaan Amazon Cognito Sync dan Amazon Mobile Analytics dihapus dari versi 3.5AWS SDK for .NET.AWS AppSyncadalah pengganti Amazon Cognito Sync. Amazon Pinpoint adalah pengganti yang disukai untuk Amazon Mobile Analytics.

Jika kode Anda dipengaruhi oleh kurangnya kode pustaka tingkat tinggi untukAWS AppSyncdan Amazon Pinpoint, Anda dapat merekam minat Anda pada salah satu atau kedua hal berikut GitHub masalah:https://github.com/aws/dotnet/issues/20danhttps://github.com/aws/dotnet/issues/19. Anda juga dapat memperoleh pustaka untuk Amazon Cognito Sync Manager dan Amazon Mobile Analytics Manager dari berikut ini GitHub repositori:aws/amazon-cognito-sync-manager-Bersihdanaws/aws-mobile-analytics-manager-Bersih.

Migrasi kode sinkron

Versi 3.5AWS SDK for .NETmendukung kedua .NET Framework dan .NET Standard (melalui versi .NET Core seperti .NET core 3.1, .NET 5, dan sebagainya). Variasi SDK yang sesuai dengan Standar .NET hanya menyediakan metode asinkron, jadi jika Anda ingin memanfaatkan .NET Standard, Anda harus mengubah kode sinkron sehingga berjalan secara asinkron.

Cuplikan kode berikut menunjukkan bagaimana Anda dapat mengubah kode sinkron menjadi kode asinkron. Kode dalam cuplikan ini digunakan untuk menampilkan jumlah bucket Amazon S3.

Panggilan kode asliListBuckets.

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}");

Untuk menggunakan SDK versi 3.5, panggilListBucketsAsyncsebagai gantinya.

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}");