정규식 원본 생성을 위한 SYSLIB 진단
다음 표에서는 .NET 7 및 이후 버전의 regex 원본 생성 분석기 진단 ID를 보여줍니다. SYSLIB1045
는 원본 생성을 사용하여 컴파일 시간에 정규식 엔진 구현을 생성할 수 있는 위치를 자동으로 알려줍니다. 나머지 진단은 원본 생성기의 사용과 관련된 오류를 경고합니다.
진단 ID | Description |
---|---|
SYSLIB1040 |
GeneratedRegexAttribute 사용이 잘못되었습니다. |
SYSLIB1041 |
여러 GeneratedRegexAttribute 특성이 동일한 메서드에 적용되었지만 그중 하나만 허용됩니다. |
SYSLIB1042 |
지정된 정규식이 잘못되었습니다. |
SYSLIB1043 |
GeneratedRegexAttribute 메서드는 부분적이고 매개 변수가 없으며 제네릭이 아닌 비추상 메서드여야 하며, Regex를 반환해야 합니다. |
SYSLIB1044 |
regex 생성기는 내부 제한으로 인해 지정된 정규식에 대한 전체 원본 구현을 생성할 수 없습니다. 자세한 내용은 생성된 원본의 설명을 참조하세요. |
SYSLIB1045 |
GeneratedRegexAttribute를 사용하여 컴파일 시간에 정규식 구현을 생성합니다. |
정규식의 원본 생성에 관한 자세한 내용은 .NET 정규식 원본 생성기를 참조하세요.
경고 표시 안 함
가능한 경우 해결 방법 중 하나를 사용하는 것이 좋습니다. 그러나 코드를 변경할 수 없는 경우 #pragma
지시문 또는 <NoWarn>
프로젝트 설정을 통해 경고를 표시하지 않을 수 있습니다. SYSLIB1XXX
소스 생성기 진단이 오류로 표시되지 않으면 코드 또는 프로젝트 파일에서 경고를 표시하지 않을 수 있습니다.
코드에서 경고를 표시하지 않으려면 다음을 수행합니다.
// Disable the warning.
#pragma warning disable SYSLIB1006
// Code that generates compiler diagnostic.
// ...
// Re-enable the warning.
#pragma warning restore SYSLIB1006
프로젝트 파일에서 경고를 표시하지 않으려면 다음을 수행합니다.
<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>
추가 정보
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET