Aracılığıyla paylaş


Type.IsGenericParameter Özellik

Tanım

Geçerli Type değerin genel tür veya yöntem tanımında tür parametresini temsil edip etmediğini belirten bir değer alır.

public:
 abstract property bool IsGenericParameter { bool get(); };
public:
 virtual property bool IsGenericParameter { bool get(); };
public abstract bool IsGenericParameter { get; }
public virtual bool IsGenericParameter { get; }
member this.IsGenericParameter : bool
Public MustOverride ReadOnly Property IsGenericParameter As Boolean
Public Overridable ReadOnly Property IsGenericParameter As Boolean

Özellik Değeri

true nesnesi genel tür tanımının Type veya genel yöntem tanımının tür parametresini temsil ederse; değilse, false.

Örnekler

Aşağıdaki örnek, IsGenericParameter genel türdeki genel tür parametrelerini test etmek için özelliğini kullanır.

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);
        }
    }
}
if t.IsGenericType then
    // If this is a generic type, display the type arguments.
    let typeArguments = t.GetGenericArguments()

    printfn $"\tList type arguments ({typeArguments.Length}):" 

    for tParam in typeArguments do
        // If this is a type parameter, display its position.
        if tParam.IsGenericParameter then
            printfn $"\t\t{tParam}\t(unassigned - parameter position {tParam.GenericParameterPosition})"
        else
            printfn $"\t\t{tParam}"
If t.IsGenericType Then
    ' If this is a generic type, display the type arguments.
    '
    Dim typeArguments As Type() = t.GetGenericArguments()
    
    Console.WriteLine(vbTab & "List type arguments (" _
        & typeArguments.Length & "):")
    
    For Each tParam As Type In typeArguments
        ' If this is a type parameter, display its position.
        '
        If tParam.IsGenericParameter Then
            Console.WriteLine(vbTab & vbTab & tParam.ToString() _
                & vbTab & "(unassigned - parameter position " _
                & tParam.GenericParameterPosition & ")")
        Else
            Console.WriteLine(vbTab & vbTab & tParam.ToString())
        End If
    Next tParam
End If

Açıklamalar

Typegenel tür parametrelerini temsil eden nesneler, genel tür tanımını temsil eden bir Type nesnenin yöntemini veya GetGenericArguments genel yöntem tanımını temsil eden bir MethodInfo nesnenin yöntemini çağırarak GetGenericArguments elde edilebilir.

  • Genel bir tür veya yöntem tanımı için özelliği, sonuçta elde edilen IsGenericParameter dizinin her öğesi için döndürür true .

  • Kapalı bir tür veya yöntem için özelliği, IsGenericParameter yöntemi tarafından GetGenericArguments döndürülen dizinin her öğesi için döndürürfalse.

  • Açık bir tür veya yöntem için dizinin bazı öğeleri belirli türler, diğerleri ise tür parametreleri olabilir. IsGenericParametertürleri ve true tür parametreleri için döndürürfalse. özelliği için ContainsGenericParameters kod örneği, türlerin ve tür parametrelerinin karışımına sahip genel bir sınıfı gösterir.

Genel yansımada kullanılan terimlere ilişkin sabit koşulların IsGenericType listesi için özellik açıklamalarına bakın.

Şunlara uygulanır

Ayrıca bkz.