Binder.SelectMethod Yöntem

Tanım

Bağımsız değişken türüne göre verilen yöntem kümesinden bir yöntem seçer.

public:
 abstract System::Reflection::MethodBase ^ SelectMethod(System::Reflection::BindingFlags bindingAttr, cli::array <System::Reflection::MethodBase ^> ^ match, cli::array <Type ^> ^ types, cli::array <System::Reflection::ParameterModifier> ^ modifiers);
public abstract System.Reflection.MethodBase? SelectMethod(System.Reflection.BindingFlags bindingAttr, System.Reflection.MethodBase[] match, Type[] types, System.Reflection.ParameterModifier[]? modifiers);
public abstract System.Reflection.MethodBase SelectMethod(System.Reflection.BindingFlags bindingAttr, System.Reflection.MethodBase[] match, Type[] types, System.Reflection.ParameterModifier[] modifiers);
abstract member SelectMethod : System.Reflection.BindingFlags * System.Reflection.MethodBase[] * Type[] * System.Reflection.ParameterModifier[] -> System.Reflection.MethodBase
Public MustOverride Function SelectMethod (bindingAttr As BindingFlags, match As MethodBase(), types As Type(), modifiers As ParameterModifier()) As MethodBase

Parametreler

bindingAttr
BindingFlags

Değerlerin bit düzeyinde birleşimi BindingFlags .

match
MethodBase[]

Eşleştirme için aday olan yöntem kümesi. Örneğin, tarafından bir Binder nesne kullanıldığında InvokeMember, bu parametre yansımanın olası eşleşmeler olarak belirlediği yöntem kümesini belirtir, çünkü bunlar genellikle doğru üye adına sahiptir. tarafından DefaultBinder sağlanan varsayılan uygulama, bu dizinin sırasını değiştirir.

types
Type[]

Eşleşen bir yöntemi bulmak için kullanılan parametre türleri.

modifiers
ParameterModifier[]

Bağlamanın, türlerin değiştirildiği parametre imzalarıyla çalışmasını sağlayan bir parametre değiştirici dizisi.

Döndürülenler

Bulunursa eşleşen yöntem; aksi takdirde , null.

Özel durumlar

Varsayılan bağlayıcı için, match tarafından typesaçıklanan parametre türleri için eşit derecede iyi eşleşmeler olan birden çok yöntem içerir. Örneğin, içindeki types dizi için Type bir MyClass nesnesi içerir ve içindeki match dizi, temel sınıfını MyClass alan bir yöntemi ve uygulayan MyClass bir arabirimi alan bir yöntem içerir.

Varsayılan bağlayıcı için matchnull veya boş bir dizidir.

-veya-

öğesi types öğesi öğesinden Typetüretilir, ancak türünde RuntimeTypedeğildir.

Açıklamalar

Ölçütle eşleşen bir yöntem yoksa bu yöntem döndürülmelidir null . Bu yöntem, üzerinde GetConstructorve GetMethod yöntemleri tarafından Type sağlanan seçimi denetler.

Şunlara uygulanır