컴파일러 오류 CS0592
이 선언 형식에서는 ‘attribute’ 특성이 유효하지 않습니다. 이 특성은 ‘type’ 선언에서만 유효합니다.
특성을 정의할 때 AttributeTargets
값을 지정하여 적용할 수 있는 구조체를 정의합니다. 다음 예제에서는 AttributeUsage
특성이 AttributeTargets.Interface
를 지정하기 때문에 MyAttribute
특성을 인터페이스에만 적용할 수 있습니다. 특성이 클래스(A
클래스)에 적용되기 때문에 오류가 생성됩니다.
예시
다음 샘플에서는 CS0592를 생성합니다.
// CS0592.cs
using System;
[AttributeUsage(AttributeTargets.Interface)]
public class MyAttribute : Attribute
{
}
[MyAttribute]
// Generates CS0592 because MyAttribute is not valid for a class.
public class A
{
public static void Main()
{
}
}
참고 항목
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기