Прочитать на английском

Поделиться через


Type.IsGenericParameter Свойство

Определение

Возвращает значение, позволяющее определить, представляет ли текущий объект Type параметр типа в определении универсального типа или метода.

public abstract bool IsGenericParameter { get; }
public virtual bool IsGenericParameter { get; }

Значение свойства

Boolean

Значение true, если объект Type представляет параметр определения универсального типа; в противном случае — значение false.

Примеры

В следующем примере свойство используется IsGenericParameter для проверки параметров универсального типа в универсальном типе.

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

    Console.WriteLine("\tList type arguments ({0}):", 
        typeArguments.Length);

    foreach (Type tParam in typeArguments)
    {
        // If this is a type parameter, display its
        // position.
        //
        if (tParam.IsGenericParameter)
        {
            Console.WriteLine("\t\t{0}\t(unassigned - parameter position {1})",
                tParam,
                tParam.GenericParameterPosition);
        }
        else
        {
            Console.WriteLine("\t\t{0}", tParam);
        }
    }
}

Комментарии

Type объекты, представляющие параметры универсального типа, можно получить путем вызова GetGenericArguments метода Type объекта, представляющего определение универсального типа, или GetGenericArguments метода MethodInfo объекта, который представляет определение универсального метода.

  • Для определения универсального типа или метода IsGenericParameter свойство возвращает true для каждого элемента результирующего массива.

  • Для закрытого сконструированного типа или метода IsGenericParameter свойство возвращает false для каждого элемента массива, возвращаемого GetGenericArguments методом.

  • Для открытого сконструированного типа или метода некоторые элементы массива могут быть конкретными типами, а другие могут быть параметрами типа. IsGenericParameter Возвращает false для типов и true для параметров типа. В примере кода для ContainsGenericParameters Свойства показан универсальный класс с сочетанием типов и параметров типа.

Список неизменяемых условий для терминов, используемых в отражении универсальных типов, см. в примечаниях к описанию свойства IsGenericType.

Применяется к

См. также раздел