SYSLIB0018: Pemuatan khusus pantulan tidak didukung dan melempar PlatformNotSupportedException
Metode berikut ditandai sebagai usang, mulai dari .NET 6. Memanggilnya dalam kode menghasilkan peringatan SYSLIB0018
pada waktu kompilasi. Metode ini melemparkan PlatformNotSupportedException pada waktu proses.
- Assembly.ReflectionOnlyLoad
- Assembly.ReflectionOnlyLoadFrom(String)
- Type.ReflectionOnlyGetType(String, Boolean, Boolean)
Penyelesaian masalah
Pemuatan khusus refleksi digantikan oleh metadata load-context di .NET Core dan .NET 5+. Untuk informasi selengkapnya, lihat Cara: Memeriksa konten rakitan menggunakan MetadataLoadContext.
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 SYSLIB0018
// Code that uses obsolete API.
// ...
// Re-enable the warning.
#pragma warning restore SYSLIB0018
Untuk menekan semua SYSLIB0018
peringatan dalam proyek Anda, tambahkan <NoWarn>
properti ke file proyek Anda.
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
...
<NoWarn>$(NoWarn);SYSLIB0018</NoWarn>
</PropertyGroup>
</Project>
Untuk informasi selengkapnya, lihat Menyembunyikan peringatan.