사용자 정의 컴파일 시간 경고 c# 생성
-
07-07-2019 - |
문제
VS2008을 사용하고 있으며 속성의 사용자 정의 속성을 기반으로 컴파일 시간 경고 / 오류를 만들고 싶습니다 (가능한 경우).
현재 나에게 관심있는 두 가지 사례가 있습니다.
[MyAttribute (typeof(MyClass)]
MyClass가 인터페이스를 구현 해야하는 곳. 현재 나는 이것을 속성의 생성자로 주장하지만, 스택 추적의 특성으로 인해 추적하기 쉽지 않습니다.
public MyAttribute (Type MyClassType)
{
System.Diagnostics.Debug.Assert(typeof(MyInterface).IsAssignableFrom(MyClassType),
"Editor must implement interface: " + typeof(MyInterface).Name);
}
나에게 관심이있는 두 번째 사례는 속성에 정의 된 유형이있는 곳입니다. 해당 유형이 인터페이스를 구현하면 다른 속성이없는 경우 경고를 표시해야합니다.
IE if (myclass.implements (someinterface) &&!
[MyAttribute(typeof(MyClass)]
// Comment next line to generate warning
[Foo ("Bar")]
감사!
제휴하지 않습니다 StackOverflow