MethodBase.ContainsGenericParameters Właściwość

Definicja

Pobiera wartość wskazującą, czy metoda ogólna zawiera nieprzypisane parametry typu ogólnego.

C#
public virtual bool ContainsGenericParameters { get; }

Wartość właściwości

true jeśli bieżący MethodBase obiekt reprezentuje metodę ogólną zawierającą nieprzypisane parametry typu ogólnego; w przeciwnym razie false.

Uwagi

Metodę ogólną można wywołać tylko wtedy, gdy nie ma definicji typów ogólnych lub otwartych typów skonstruowanych w argumentach typu samej metody lub w dowolnych ujętach typach. Ponieważ typy mogą być dowolnie złożone, tworzenie tej cyklicznej determinacji jest trudne. Dla wygody i zmniejszenia prawdopodobieństwa błędu ContainsGenericParameters właściwość zapewnia standardowy sposób rozróżniania zamkniętych metod skonstruowanych, które można wywołać i otwartych metod skonstruowanych, które nie mogą. ContainsGenericParameters Jeśli właściwość zwróci truewartość , nie można wywołać metody .

Właściwość ContainsGenericParameters wyszukuje cyklicznie parametry typu. Na przykład zwraca true on dowolną metodę w otwartym typie A<T> (A(Of T) w Visual Basic), mimo że sama metoda nie jest ogólna. Kontrastuje to z zachowaniem IsGenericMethod właściwości, która zwraca false dla takiej metody.

ContainsGenericParameters Podobnie parametr właściwości zwraca true wartość dla dowolnego konstruktora w otwartym typie, mimo że konstruktory nie mogą mieć własnych parametrów typu.

Aby uzyskać listę niezmiennych warunków dotyczących warunków specyficznych dla metod ogólnych, zobacz IsGenericMethod właściwość . Aby uzyskać listę niezmiennych warunków dla innych terminów używanych w odbiciu ogólnym, zobacz Type.IsGenericType właściwość .

Dotyczy

Produkt Wersje
.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, 8, 9, 10
.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, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Zobacz też