MethodBase.GetGenericArguments 方法

定義

傳回 Type 物件的陣列,這些物件代表泛型方法的類型引數,或泛型方法定義的類型參數。

public:
 virtual cli::array <Type ^> ^ GetGenericArguments();
public virtual Type[] GetGenericArguments ();
[System.Runtime.InteropServices.ComVisible(true)]
public virtual Type[] GetGenericArguments ();
abstract member GetGenericArguments : unit -> Type[]
override this.GetGenericArguments : unit -> Type[]
[<System.Runtime.InteropServices.ComVisible(true)>]
abstract member GetGenericArguments : unit -> Type[]
override this.GetGenericArguments : unit -> Type[]
Public Overridable Function GetGenericArguments () As Type()

傳回

Type[]

Type 物件的陣列,這些物件表示泛型方法的型別引數,或泛型方法定義的型別參數。 如果目前的方法不是泛型方法,則會傳回空白陣列。

屬性

例外狀況

目前物件為 ConstructorInfo。 .NET Framework 2.0 不支援泛型建構函式。 如果未在衍生類別中覆寫這個方法,則這個例外狀況就是預設行為。

備註

傳回陣列的專案會依照它們出現在泛型方法的類型參數清單中的順序。

  • 如果目前方法是封閉式建構方法 (,則 ContainsGenericParameters 屬性會傳回 false) ,方法傳 GetGenericArguments 回的陣列會包含已指派給泛型方法定義之泛型型別參數的類型。

  • 如果目前的方法是泛型方法定義,陣列會包含類型參數。

  • 如果目前的方法是開放式建構方法 (,則 ContainsGenericParameters 屬性會傳回 true) 特定型別已指派給某些型別參數,而封入泛型型別的類型參數已指派給其他型別參數,則陣列會同時包含類型和型別參數。 IsGenericParameter使用 屬性來區分它們。 如需此案例的示範,請參閱為 ContainsGenericParameters 屬性提供的程式碼範例。

.NET Framework 2.0 不支援泛型建構函式。 如果衍生類別中未覆寫,這個屬性會擲 NotSupportedException 回,因此如果目前實例的類型為 ConstructorInfo ,則會擲回例外狀況。

如需泛型方法特定詞彙的不變異條件清單,請參閱 IsGenericMethod 屬性。 如需泛型反映中所使用之其他詞彙的不變異條件清單,請參閱 Type.IsGenericType 屬性。

適用於

另請參閱