C # 8.0에는 nullable 참조 형식이 도입되었습니다. nullable 속성을 가진 간단한 클래스는 다음과 같습니다.
public class Foo
{
public String? Bar { get; set; }
}
리플렉션을 통해 클래스 속성에서 nullable 참조 유형을 사용하는지 확인하는 방법이 있습니까?
예, 그러나 사소한 것이 아닙니다. 다행히도 되고 문서화 .
—
Jeroen Mostert
아, 그렇습니다. 그래서
—
마크 Gravell
string? X
어떤 특성을 얻을 수없고, string Y
얻을 [Nullable((byte)2)]
으로 [NullableContext(2)]
접근 자에
형식 에 nullable (또는 nullable이 아닌) 만 포함되어 있으면 모두로 표시됩니다
—
canton7
NullableContext
. 믹스가 있으면 Nullable
사용됩니다. NullableContext
어디에서나 방출하지 않아도되는 최적화 Nullable
입니다.
[NullableContext(2), Nullable((byte) 0)]
되는 것처럼 보입니다. 그래서 확인해야 할 것이지만, 그것을 해석하는 방법의 규칙을 이해하려면 더 파고 들어야합니다!Foo