Bagikan melalui


Perubahan mendasar pada modul yang dihasilkan akibat peningkatan dari AutoRest.PowerShell v3 ke v4

Kami bergerak maju dengan menggunakan versi baru alat pembuatan kode, AutoRest.PowerShell v4, untuk memanfaatkan fitur yang ditawarkan oleh versi terbaru. Desain ulang kode yang dihasilkan untuk mendukung persyaratan pengguna baru dalam versi ini pasti memperkenalkan beberapa perubahan yang dapat menyebabkan kerusakan.

Di bawah ini, kami mencantumkan potensi perubahan yang signifikan dari perspektif pengguna yang mungkin terjadi saat memperbarui alat pembuatan kode untuk modul Azure PowerShell.

Nota

Perubahan mendasar berikut mungkin tidak berlaku secara universal untuk semua modul yang dihasilkan. Terjadinya perubahan mendasar ini juga tergantung pada konfigurasi tertentu yang digunakan saat membuat modul Azure PowerShell dengan AutoRest.PowerShell v4. Untuk informasi terperinci tentang perubahan signifikan yang mungkin terjadi, silakan lihat daftar perubahan signifikan untuk modul tertentu.

Daftar menggantikan array dalam kelas C# yang dihasilkan

Kami sekarang menggenerasi properti mirip koleksi sebagai List alih-alih Array dalam model. Ini karena List dinamis sehingga memungkinkan elemen penampingan/penghapusan, sementara Array berukuran tetap sehingga sulit diedit.

Cara mengurangi dampak perubahan yang merusak

  • Gunakan metode dari Daftar untuk mengganti metode dari Array, misalnya: gunakan hitungan alih-alih Panjang untuk mengambil jumlah elemen
  • Gunakan fungsi ToArray jika konversi ke array ukuran tetap diperlukan

Gunakan jenis primitif untuk enum alih-alih struktur

Kami dulu membuat struct untuk enum guna mendukung pelengkap tab parameter. Desain ini telah ditinggalkan karena keterbatasannya hanya mendukung enum dengan jenis string.

Cara mengurangi dampak perubahan yang merusak

Umumnya, perubahan ini tidak akan menyebabkan perubahan signifikan bagi pengguna. Dalam modul yang dihasilkan oleh versi lama, pengguna biasanya menggunakan jenis primitif, dan struktur yang dihasilkan mencakup pengonversi yang mengubah jenis primitif ini menjadi struktur. Satu-satunya persyaratan bagi pengguna adalah menghindari penggunaan Microsoft.Azure.PowerShell.Cmdlets.{module}.Support secara langsung.

Perubahan signifikan akibat perbaikan bug

Penghapusan PassThru untuk cmdlet tertentu

PassThru adalah parameter pengalihan yang kami tambahkan ke cmdlet yang tidak memiliki output untuk mengaktifkan fungsionalitas alur. Di AutoRest.PowerShell v3, PassThru salah ditambahkan ke beberapa cmdlet yang memang memiliki output. Ini diperbaiki di v4 dan parameter PassThru tambahan tersebut dihapus.

Cara mengurangi dampak perubahan yang merusak

Menghentikan penggunaan parameter PassThru untuk cmdlet ini. Berhati-hatilah bahwa dengan melakukannya output dapat berubah.

Penghapusan parameter baca-saja

Jika properti ditandai "x-ms-mutability": ["read"] dalam spesifikasi OpenAPI, itu berarti properti hanya akan muncul dalam output tetapi tidak pernah sebagai parameter input. Namun, pada AutoRest.PowerShell v3, parameter yang bersifat readonly seperti itu dihasilkan secara salah untuk cmdlet.

Cara mengurangi dampak perubahan yang merusak

Sangat aman untuk menghapus parameter Readonly ini, karena diabaikan oleh layanan.