유형이 특정 일반 인터페이스 유형을 구현하는지 확인
다음 유형 정의가 있다고 가정합니다.
public interface IFoo<T> : IBar<T> {} public class Foo<T> : IFoo<T> {}
맹글링된 유형만 주어지면 Foo 유형이 일반 인터페이스를 구현하는지 어떻게 확인할 수 있습니까? IBar
LINQ 쿼리를 사용한 솔루션
TcKs에서 제안한 대로 다음 LINQ 쿼리를 활용할 수 있습니다.
bool isBar = foo.GetType().GetInterfaces().Any(x => x.IsGenericType && x.GetGenericTypeDefinition() == typeof(IBar<>));
이것은 쿼리는 foo의 구현된 인터페이스 중 하나라도 일치하는 일반 유형인지 확인합니다. IBar
위 내용은 유형이 C#에서 특정 일반 인터페이스를 구현하는지 어떻게 확인할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!