ConstructorInfo.Invoke Yöntem

Tanım

Bu örnek tarafından yansıtılan oluşturucuyu çağırır.

Aşırı Yüklemeler

Name Description
Invoke(Object[])

Belirtilen parametrelere sahip olan örnek tarafından yansıtılan oluşturucuyu çağırır ve yaygın olarak kullanılmayan parametreler için varsayılan değerler sağlar.

Invoke(BindingFlags, Binder, Object[], CultureInfo)

Türetilmiş bir sınıfta uygulandığında, belirtilen bağımsız değişkenlerle bunun ConstructorInfo yansıttığı oluşturucuyu belirtilen Binderöğesinin kısıtlamaları altında çağırır.

Invoke(Object[])

Kaynak:
ConstructorInfo.cs
Kaynak:
ConstructorInfo.cs
Kaynak:
ConstructorInfo.cs
Kaynak:
ConstructorInfo.cs
Kaynak:
ConstructorInfo.cs

Belirtilen parametrelere sahip olan örnek tarafından yansıtılan oluşturucuyu çağırır ve yaygın olarak kullanılmayan parametreler için varsayılan değerler sağlar.

public:
 virtual System::Object ^ Invoke(cli::array <System::Object ^> ^ parameters);
public:
 System::Object ^ Invoke(cli::array <System::Object ^> ^ parameters);
public virtual object Invoke(object[] parameters);
public object Invoke(object?[]? parameters);
public object Invoke(object[] parameters);
override this.Invoke : obj[] -> obj
Public Overridable Function Invoke (parameters As Object()) As Object
Public Function Invoke (parameters As Object()) As Object

Parametreler

parameters
Object[]

Bu oluşturucu için parametrelerin sayısı, sırası ve türüyle (varsayılan bağlayıcının kısıtlamaları altında) eşleşen bir değer dizisi. Bu oluşturucu parametre almazsa, Object[] parametreleri = new Object[0] içinde olduğu gibi sıfır öğe içeren bir dizi veya nullkullanın. Bu dizideki açıkça bir değerle başlatılmayan herhangi bir nesne, bu nesne türü için varsayılan değeri içerir. Başvuru türü öğeleri için bu değer şeklindedir null. Değer türü öğeleri için bu değer, belirli öğe türüne bağlı olarak 0, 0,0 veya falseşeklindedir.

Döndürülenler

Oluşturucuyla ilişkilendirilmiş sınıfın bir örneği.

Özel durumlar

Sınıf soyut.

-veya-

Oluşturucu bir sınıf başlatıcıdır.

Oluşturucu özel veya korumalıdır ve çağıran eksiktir MemberAccess.

Not: Windows Store uygulamaları için .NET veya Portable Sınıf Kitaplığı bunun yerine MemberAccessException temel sınıf özel durumunu yakalayın.

Dizi, parameters bu oluşturucu tarafından kabul edilen türlerle eşleşen değerler içermiyor.

Çağrılan oluşturucu bir özel durum oluşturur.

Yanlış sayıda parametre geçirildi.

, TypedReferenceve ArgIterator türlerinin RuntimeArgumentHandleoluşturulması desteklenmez.

Çağıranın gerekli kod erişim izni yok.

Açıklamalar

Dizideki parameters öğelerin sayısı, türü ve sırası, bu örnek tarafından yansıtılan oluşturucu için parametrelerin sayısı, türü ve sırası ile aynı olmalıdır. Oluşturucuyu çağırmadan önce, Invoke çağıranın erişim iznine sahip olduğundan emin olur ve parametrelerin geçerli olduğunu doğrular.

Tam güvenilir kod için erişim kısıtlamaları yoksayılır. Yani, koda tam olarak güvenildiğinde yansıma kullanılarak özel oluşturuculara, yöntemlere, alanlara ve özelliklere erişilebilir ve çağrılabilir.

Note

Örnek oluşturucuları olmayan bir değer türünün örneğini oluşturmak için yöntemini kullanın CreateInstance .

Bu yöntem, varsayılan değerleri kullanarak aşağıdaki aşırı yüklenmiş sürüm için kullanışlı bir yöntemdir. Bu yöntem geçersiz kılınamaz.

Note

Bu yöntem, çağıranın bayrağıyla verilmiş ReflectionPermission olması ve genel olmayan üyelerin izin kümesinin çağıranın izin kümesiyle veya bunun bir alt kümesiyle ReflectionPermissionFlag.RestrictedMemberAccess sınırlı olması durumunda genel olmayan üyelere erişmek için kullanılabilir. (Bkz. Yansıma için Güvenlik Konuları.) Bu işlevselliği kullanmak için uygulamanızın .NET Framework 3.5 veya sonraki bir sürümü hedeflemesi gerekir.

Şunlara uygulanır

Invoke(BindingFlags, Binder, Object[], CultureInfo)

Kaynak:
ConstructorInfo.cs
Kaynak:
ConstructorInfo.cs
Kaynak:
ConstructorInfo.cs
Kaynak:
ConstructorInfo.cs
Kaynak:
ConstructorInfo.cs

Türetilmiş bir sınıfta uygulandığında, belirtilen bağımsız değişkenlerle bunun ConstructorInfo yansıttığı oluşturucuyu belirtilen Binderöğesinin kısıtlamaları altında çağırır.

public:
 abstract System::Object ^ Invoke(System::Reflection::BindingFlags invokeAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ parameters, System::Globalization::CultureInfo ^ culture);
public abstract object Invoke(System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder? binder, object?[]? parameters, System.Globalization.CultureInfo? culture);
public abstract object Invoke(System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, object[] parameters, System.Globalization.CultureInfo culture);
override this.Invoke : System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo -> obj
Public MustOverride Function Invoke (invokeAttr As BindingFlags, binder As Binder, parameters As Object(), culture As CultureInfo) As Object

Parametreler

invokeAttr
BindingFlags

BindingFlags Bağlama türünü belirten değerlerden biri.

binder
Binder

Bir Binder özellik kümesini tanımlayan ve bağlamayı, bağımsız değişken türlerini zorlamayı ve yansıma kullanarak üyeleri çağırmayı sağlayan. ise bindernullBinder.DefaultBinding, kullanılır.

parameters
Object[]

bu oluşturucu için parametrelerin Object sayısı, sırası ve türüyle eşleştirmek için türündeki bir dizi, kısıtlamaları binderaltında kullanılır. Bu oluşturucu parametre gerektirmiyorsa, Object[] parametreleri = new Object[0] gibi sıfır öğe içeren bir dizi geçirin. Bu dizideki açıkça bir değerle başlatılmayan herhangi bir nesne, bu nesne türü için varsayılan değeri içerir. Başvuru türü öğeleri için bu değer şeklindedir null. Değer türü öğeleri için bu değer, belirli öğe türüne bağlı olarak 0, 0,0 veya falseşeklindedir.

culture
CultureInfo

Türlerin CultureInfo zorlamasını idare etmek için kullanılan. Bu isenullCultureInfo, geçerli iş parçacığı için kullanılır.

Döndürülenler

Oluşturucuyla ilişkilendirilmiş sınıfın bir örneği.

Özel durumlar

Dizi, parameters bu oluşturucu tarafından kabul edilen türlerle eşleşen değerleri, kısıtlamaları binderaltında içermez.

Çağrılan oluşturucu bir özel durum oluşturur.

Yanlış sayıda parametre geçirildi.

, TypedReferenceve ArgIterator türlerinin RuntimeArgumentHandleoluşturulması desteklenmez.

Çağıranın gerekli kod erişim izinleri yok.

Sınıf soyut.

-veya-

Oluşturucu bir sınıf başlatıcıdır.

Oluşturucu özel veya korumalıdır ve çağıran eksiktir MemberAccess.

Açıklamalar

Dizideki parameters öğelerin sayısı, türü ve sırası, bu örnek tarafından yansıtılan oluşturucu için parametrelerin sayısı, türü ve sırası ile aynı olmalıdır.

Oluşturucuyu çağırmadan önce, Invoke çağıranın erişim iznine sahip olduğundan ve parametrelerin doğru numara, sipariş ve türe sahip olduğundan emin olun.

Tam güvenilir kod için erişim kısıtlamaları yoksayılır. Yani, koda tam olarak güvenildiğinde yansıma kullanılarak özel oluşturuculara, yöntemlere, alanlara ve özelliklere erişilebilir ve çağrılabilir.

Note

Örnek oluşturucuları olmayan bir değer türünün örneğini oluşturmak için yöntemini kullanın CreateInstance .

Note

Bu yöntem, çağıranın bayrağıyla verilmiş ReflectionPermission olması ve genel olmayan üyelerin izin kümesinin çağıranın izin kümesiyle veya bunun bir alt kümesiyle ReflectionPermissionFlag.RestrictedMemberAccess sınırlı olması durumunda genel olmayan üyelere erişmek için kullanılabilir. (Bkz. Yansıma için Güvenlik Konuları.) Bu işlevselliği kullanmak için uygulamanızın .NET Framework 3.5 veya sonraki bir sürümü hedeflemesi gerekir.

Ayrıca bkz.

Şunlara uygulanır