Regex kaynak oluşturma için SYSLIB tanılamaları
Aşağıdaki tabloda.NET 7 ve sonraki sürümlerde regex kaynak oluşturma çözümleyicileri için tanılama kimlikleri gösterilmektedir. SYSLIB1045
derleme zamanında normal ifade altyapısı uygulamasını oluşturmak için kaynak oluşturmayı kullanabileceğiniz yerler için sizi otomatik olarak uyarır. Kalan tanılama, kaynak oluşturucu kullanımıyla ilgili hatalarla ilgili olarak sizi uyarır.
Tanılama Kimliği | Açıklama |
---|---|
SYSLIB1040 |
Geçersiz GeneratedRegexAttribute kullanım. |
SYSLIB1041 |
Aynı yönteme birden çok GeneratedRegexAttribute öznitelik uygulandı, ancak yalnızca birine izin verilir. |
SYSLIB1042 |
Belirtilen normal ifade geçersiz. |
SYSLIB1043 |
Yöntemin GeneratedRegexAttribute kısmi, parametresiz, genel olmayan ve soyut olmayan olması ve döndürmesi Regexgerekir. |
SYSLIB1044 |
Regex oluşturucu, bir iç sınırlama nedeniyle belirtilen normal ifade için tam bir kaynak uygulaması oluşturamadı. Daha fazla ayrıntı için oluşturulan kaynaktaki açıklamaya bakın. |
SYSLIB1045 |
Derleme zamanında normal ifade uygulamasını oluşturmak için kullanın GeneratedRegexAttribute . |
Normal ifadeler için kaynak oluşturma hakkında daha fazla bilgi için bkz . .NET normal ifade kaynak oluşturucuları.
Uyarıları gizleme
Mümkün olduğunda geçici çözümlerden birini kullanmanız önerilir. Ancak, kodunuzu değiştiremiyorsanız, uyarıyı bir #pragma
yönerge veya <NoWarn>
proje ayarı aracılığıyla gizleyebilirsiniz. SYSLIB1XXX
Kaynak oluşturucu tanılaması hata olarak ortaya çıkmazsa, uyarıyı kodda veya proje dosyanızda gizleyebilirsiniz.
Koddaki uyarıları engellemek için:
// Disable the warning.
#pragma warning disable SYSLIB1006
// Code that generates compiler diagnostic.
// ...
// Re-enable the warning.
#pragma warning restore SYSLIB1006
Proje dosyasındaki uyarıları engellemek için:
<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>