Auf Englisch lesen

Teilen über


Type.IsGenericParameter Eigenschaft

Definition

Ruft einen Wert ab, der angibt, ob der aktuelle Type einen Typparameter einer generischen Typ- oder Methodendefinition darstellt.

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

Eigenschaftswert

Boolean

true, wenn das Type-Objekt einen Typparameter einer generischen Typ- oder Methodendefinition darstellt, andernfalls false.

Beispiele

Im folgenden Beispiel wird die IsGenericParameter -Eigenschaft verwendet, um auf generische Typparameter in einem generischen Typ zu testen.

C#
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);
        }
    }
}

Hinweise

Type -Objekte, die generische Typparameter darstellen, können durch Aufrufen der -Methode eines -Objekts, das eine generische Typdefinition darstellt, oder der -Methode eines -Objekts, das eine generische GetGenericArguments Type GetGenericArguments MethodInfo Methodendefinition darstellt, ermittelt werden.

  • Bei einer generischen Typ- oder Methodendefinition gibt IsGenericParameter die -Eigenschaft für true jedes Element des resultierenden Arrays zurück.

  • Bei einem geschlossenen konstruierten Typ oder einer geschlossenen Methode gibt die -Eigenschaft für jedes Element des Arrays zurück, IsGenericParameter false das von der -Methode zurückgegeben GetGenericArguments wird.

  • Bei einem offenen konstruierten Typ oder einer offenen Methode können einige Elemente des Arrays bestimmte Typen und andere Typparameter sein. IsGenericParameter gibt false für die Typen und für die true Typparameter zurück. Das Codebeispiel für die ContainsGenericParameters -Eigenschaft veranschaulicht eine generische Klasse mit einer Mischung aus Typen und Typparametern.

Eine Liste der invarianten Bedingungen für Begriffe, für Begriffe, die für die Reflektion mit generischen Methoden verwendet werden, finden Sie in den Hinweisen zur Eigenschaft IsGenericType.

Gilt für

Produkt Versionen
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Siehe auch