이 항목은 아직 평가되지 않았습니다.- 이 항목 평가

Type.IsGenericParameter 속성

2013-12-13

현재 Type이 제네릭 형식 또는 메서드 정의의 형식 매개 변수를 나타내는지 여부를 나타내는 값을 가져옵니다.

Namespace:  System
어셈블리:  mscorlib(mscorlib.dll)
public virtual bool IsGenericParameter { get; }

속성 값

형식: System.Boolean
Type 개체가 제네릭 형식 정의 또는 제네릭 메서드 정의의 형식 매개 변수를 나타내면 true이고, 그렇지 않으면 false입니다.

제네릭 형식 매개 변수를 나타내는 Type 개체는 제네릭 형식 정의를 나타내는 Type 개체의 GetGenericArguments 메서드나 제네릭 메서드 정의를 나타내는 MethodInfo 개체의 GetGenericArguments 메서드를 호출하여 구할 수 있습니다.

  • 제네릭 형식 또는 메서드 정의의 경우 IsGenericParameter 속성은 생성되는 배열의 각 요소에 대해 true를 반환합니다.

  • 폐쇄형 생성 형식이나 메서드의 경우 IsGenericParameter 속성은 GetGenericArguments 메서드에서 반환하는 배열의 각 요소에 대해 false를 반환합니다.

  • 개방형 생성 형식이나 메서드의 경우 배열의 일부 요소는 특정 형식이고 다른 요소는 형식 매개 변수일 수 있습니다. IsGenericParameter는 형식에 대해 false를, 형식 매개 변수에 대해 true를 반환합니다. ContainsGenericParameters 속성에 대한 코드 예제에서는 형식과 형식 매개 변수가 혼합된 제네릭 클래스를 보여 줍니다.

제네릭 리플렉션에 사용되는 용어에 대한 고정 조건 목록은 IsGenericType 속성 설명을 참조하세요.

다음 예제에서는 IsGenericParameter 속성을 사용하여 제네릭 형식에서 제네릭 형식 매개 변수에 대한 테스트를 수행합니다.


if (t.IsGenericType)
{
   // If this is a generic type, display the type arguments.
   //
   Type[] typeArguments = t.GetGenericArguments();

   outputBlock.Text += String.Format("\tList type arguments ({0}):",
       typeArguments.Length) + "\n";

   foreach (Type tParam in typeArguments)
   {
      // If this is a type parameter, display its
      // position.
      //
      if (tParam.IsGenericParameter)
      {
         outputBlock.Text += String.Format("\t\t{0}\t(unassigned - parameter position {1})",
             tParam,
             tParam.GenericParameterPosition) + "\n";
      }
      else
      {
         outputBlock.Text += String.Format("\t\t{0}", tParam) + "\n";
      }
   }
}


Windows Phone OS

지원되는 버전: 8.0, 7.1, 7.0

Windows Phone

이 정보가 도움이 되었습니까?
(1500자 남음)
의견을 주셔서 감사합니다.
표시:
© 2014 Microsoft. All rights reserved.