■ Type 클래스를 사용해 자식 타입 여부를 구하는 방법을 보여준다.
▶ Type 클래스 : 자식 타입 여부 구하기 예제 (C#)
1 2 3 4 |
Console.WriteLine(IsChildType(typeof(HttpClient ), typeof(HttpMessageInvoker))); Console.WriteLine(IsChildType(typeof(HttpRequestMessage), typeof(HttpMessageInvoker))); |
▶ Type 클래스 : 자식 타입 여부 구하기 (C#)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
#region 자식 타입 여부 구하기 - IsChildType(childType, parentType) /// <summary> /// 자식 타입 여부 구하기 /// </summary> /// <param name="childType">자식 타입</param> /// <param name="parentType">부모 타입</param> /// <returns>자식 타입 여부</returns> public bool IsChildType(Type childType, Type parentType) { while(childType != null && childType != typeof(object)) { Type currentType = childType.IsGenericType ? childType.GetGenericTypeDefinition() : childType; if(parentType == currentType) { return true; } childType = childType.BaseType; } return false; } #endregion |