Bagikan melalui


SYSLIB0056: Assembly.LoadFrom yang mengambil AssemblyHashAlgorithm sudah usang

Kelebihan beban Assembly.LoadFrom yang mengambil AssemblyHashAlgorithm sudah usang, mulai dari .NET 9. Memanggilnya dalam kode menghasilkan peringatan SYSLIB0056 pada waktu kompilasi.

Alasan kedaluarsa

Assembly.LoadFrom(String, Byte[], AssemblyHashAlgorithm) secara tidak bersyarat NotSupportedExceptionmelempar . Ini adalah pengalaman pengembangan yang buruk. Kelebihan beban terlihat seperti API yang valid sampai digunakan, dan dilemparkan pada waktu proses. Menandainya sebagai usang memberikan sinyal waktu desain yang diperlukan untuk tidak menggunakannya.

Solusi Sementara

Gunakan kelebihan beban Assembly.LoadFrom yang tidak mengambil AssemblyHashAlgorithm.

Menyembunyikan peringatan

Jika Anda harus menggunakan API usang, Anda dapat menekan peringatan dalam kode atau dalam file proyek Anda.

Untuk menekan hanya satu pelanggaran, tambahkan direktif praprosedur ke file sumber Anda untuk menonaktifkan lalu mengaktifkan kembali peringatan.

// Disable the warning.
#pragma warning disable SYSLIB0056

// Code that uses obsolete API.
// ...

// Re-enable the warning.
#pragma warning restore SYSLIB0056

Untuk menekan semua SYSLIB0056 peringatan dalam proyek Anda, tambahkan <NoWarn> properti ke file proyek Anda.

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
   ...
   <NoWarn>$(NoWarn);SYSLIB0056</NoWarn>
  </PropertyGroup>
</Project>

Untuk informasi selengkapnya, lihat Menyembunyikan peringatan.