Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Tabel berikut menunjukkan ID diagnostik untuk penganalisis pembuatan sumber regex di .NET 7 dan versi yang lebih baru. SYSLIB1045
secara otomatis memperingatkan Anda ke tempat-tempat yang dapat Anda gunakan pembuatan sumber untuk menghasilkan implementasi mesin ekspresi reguler pada waktu kompilasi. Diagnostik yang tersisa memberi tahu Anda tentang kesalahan yang terkait dengan penggunaan generator sumber.
ID diagnostik | Deskripsi |
---|---|
SYSLIB1040 |
Penggunaan tidak valid GeneratedRegexAttribute . |
SYSLIB1041 |
Beberapa GeneratedRegexAttribute atribut diterapkan ke metode yang sama, tetapi hanya satu yang diizinkan. |
SYSLIB1042 |
Ekspresi reguler yang ditentukan tidak valid. |
SYSLIB1043 |
Metode GeneratedRegexAttribute harus parsial, tanpa parameter, non-generik, dan non-abstrak, dan mengembalikan Regex. |
SYSLIB1044 |
Generator regex tidak dapat menghasilkan implementasi sumber lengkap untuk ekspresi reguler yang ditentukan karena keterbatasan internal. Lihat penjelasan di sumber yang dihasilkan untuk detail selengkapnya. |
SYSLIB1045 |
Gunakan GeneratedRegexAttribute untuk menghasilkan implementasi ekspresi reguler pada waktu kompilasi. |
Untuk informasi selengkapnya tentang pembuatan sumber untuk ekspresi reguler, lihat generator sumber ekspresi reguler .NET.
Menutupi peringatan
Sebaiknya Anda menggunakan salah satu solusi jika memungkinkan. Namun, jika Anda tidak dapat mengubah kode, Anda dapat menyembunyikan peringatan melalui petunjuk #pragma
atau pengaturan proyek <NoWarn>
. Jika diagnostik generator sumber SYSLIB1XXX
tidak muncul sebagai kesalahan, Anda dapat menyembunyikan peringatan dalam kode atau dalam file proyek Anda.
Untuk menutupi peringatan dalam kode:
// Disable the warning.
#pragma warning disable SYSLIB1006
// Code that generates compiler diagnostic.
// ...
// Re-enable the warning.
#pragma warning restore SYSLIB1006
Untuk menutupi peringatan dalam file proyek:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<!-- NoWarn below suppresses SYSLIB1002 project-wide -->
<NoWarn>$(NoWarn);SYSLIB1002</NoWarn>
<!-- To suppress multiple warnings, you can use multiple NoWarn elements -->
<NoWarn>$(NoWarn);SYSLIB1002</NoWarn>
<NoWarn>$(NoWarn);SYSLIB1006</NoWarn>
<!-- Alternatively, you can suppress multiple warnings by using a semicolon-delimited list -->
<NoWarn>$(NoWarn);SYSLIB1002;SYSLIB1006;SYSLIB1007</NoWarn>
</PropertyGroup>
</Project>