Bagikan melalui


ConstructorInfo.Invoke Metode

Definisi

Memanggil konstruktor yang tercermin oleh instans ini.

Overload

Invoke(Object[])

Memanggil konstruktor yang tercermin oleh instans yang memiliki parameter yang ditentukan, menyediakan nilai default untuk parameter yang tidak umum digunakan.

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

Ketika diimplementasikan dalam kelas turunan, memanggil konstruktor yang tercermin oleh ini ConstructorInfo dengan argumen yang ditentukan, di bawah batasan yang ditentukan Binder.

Invoke(Object[])

Sumber:
ConstructorInfo.cs
Sumber:
ConstructorInfo.cs
Sumber:
ConstructorInfo.cs

Memanggil konstruktor yang tercermin oleh instans yang memiliki parameter yang ditentukan, menyediakan nilai default untuk parameter yang tidak umum digunakan.

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

Parameter

parameters
Object[]

Array nilai yang cocok dengan angka, urutan, dan jenis (di bawah batasan pengikat default) parameter untuk konstruktor ini. Jika konstruktor ini tidak mengambil parameter, maka gunakan array dengan elemen nol atau null, seperti dalam parameter Object[] = Object[0] baru. Objek apa pun dalam array ini yang tidak diinisialisasi secara eksplisit dengan nilai akan berisi nilai default untuk jenis objek tersebut. Untuk elemen jenis referensi, nilai ini adalah null. Untuk elemen jenis nilai, nilai ini adalah 0, 0,0, atau false, tergantung pada jenis elemen tertentu.

Mengembalikan

Instans kelas yang terkait dengan konstruktor.

Pengecualian

Kelas ini abstrak.

-atau-

Konstruktor adalah penginisialisasi kelas.

Konstruktor bersifat privat atau dilindungi, dan pemanggil tidak memiliki MemberAccess.

Catatan: Di .NET untuk aplikasi Bursa Windows atau Pustaka Kelas Portabel, tangkap pengecualian kelas dasar, MemberAccessException, sebagai gantinya.

Array parameters tidak berisi nilai yang cocok dengan jenis yang diterima oleh konstruktor ini.

Konstruktor yang dipanggil melempar pengecualian.

Jumlah parameter yang salah diteruskan.

Pemanggil tidak memiliki izin akses kode yang diperlukan.

Keterangan

Jumlah, jenis, dan urutan elemen dalam parameters array harus identik dengan jumlah, jenis, dan urutan parameter untuk konstruktor yang direfleksikan oleh instans ini. Sebelum memanggil konstruktor, Invoke pastikan bahwa pemanggil memiliki izin akses dan memverifikasi bahwa parameter valid.

Pembatasan akses diabaikan untuk kode yang sepenuhnya tepercaya. Artinya, konstruktor privat, metode, bidang, dan properti dapat diakses dan dipanggil menggunakan refleksi setiap kali kode sepenuhnya dipercaya.

Catatan

Untuk membuat instans jenis nilai yang tidak memiliki konstruktor instans, gunakan metode .CreateInstance

Metode ini adalah metode kenyamanan untuk versi kelebihan beban berikut, menggunakan nilai default. Metode ini tidak dapat ditimpa.

Catatan

Dimulai dengan .NET Framework 2.0, metode ini dapat digunakan untuk mengakses anggota non-publik jika pemanggil telah diberikan ReflectionPermission dengan ReflectionPermissionFlag.RestrictedMemberAccess bendera dan jika set pemberian anggota non-publik dibatasi untuk set pemberian penelepon, atau subsetnya. (Lihat Pertimbangan Keamanan untuk Refleksi.) Untuk menggunakan fungsionalitas ini, aplikasi Anda harus menargetkan .NET Framework 3.5 atau yang lebih baru.

Berlaku untuk

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

Sumber:
ConstructorInfo.cs
Sumber:
ConstructorInfo.cs
Sumber:
ConstructorInfo.cs

Ketika diimplementasikan dalam kelas turunan, memanggil konstruktor yang tercermin oleh ini ConstructorInfo dengan argumen yang ditentukan, di bawah batasan yang ditentukan Binder.

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

Parameter

invokeAttr
BindingFlags

Salah BindingFlags satu nilai yang menentukan jenis pengikatan.

binder
Binder

Binder yang mendefinisikan sekumpulan properti dan memungkinkan pengikatan, paksaan jenis argumen, dan pemanggilan anggota menggunakan refleksi. Jika binder adalah null, maka Binder.DefaultBinding digunakan.

parameters
Object[]

Array jenis Object yang digunakan untuk mencocokkan angka, urutan, dan jenis parameter untuk konstruktor ini, di bawah batasan binder. Jika konstruktor ini tidak memerlukan parameter, teruskan array dengan elemen nol, seperti dalam parameter Object[] = Object[0] baru. Objek apa pun dalam array ini yang tidak diinisialisasi secara eksplisit dengan nilai akan berisi nilai default untuk jenis objek tersebut. Untuk elemen jenis referensi, nilai ini adalah null. Untuk elemen jenis nilai, nilai ini adalah 0, 0,0, atau false, tergantung pada jenis elemen tertentu.

culture
CultureInfo

Yang CultureInfo digunakan untuk mengatur koersi jenis. Jika ini adalah null, CultureInfo untuk utas saat ini digunakan.

Mengembalikan

Instans kelas yang terkait dengan konstruktor.

Pengecualian

Array parameters tidak berisi nilai yang cocok dengan jenis yang diterima oleh konstruktor ini, di bawah batasan binder.

Konstruktor yang dipanggil melempar pengecualian.

Jumlah parameter yang salah diteruskan.

Penelepon tidak memiliki izin akses kode yang diperlukan.

Kelas ini abstrak.

-atau-

Konstruktor adalah penginisialisasi kelas.

Konstruktor bersifat privat atau dilindungi, dan pemanggil tidak memiliki MemberAccess.

Keterangan

Jumlah, jenis, dan urutan elemen dalam parameters array harus identik dengan jumlah, jenis, dan urutan parameter untuk konstruktor yang direfleksikan oleh instans ini.

Sebelum memanggil konstruktor, Invoke pastikan bahwa pemanggil memiliki izin akses dan bahwa parameter adalah nomor, pesanan, dan jenis yang benar.

Pembatasan akses diabaikan untuk kode yang sepenuhnya tepercaya. Artinya, konstruktor privat, metode, bidang, dan properti dapat diakses dan dipanggil menggunakan refleksi setiap kali kode sepenuhnya dipercaya.

Catatan

Untuk membuat instans jenis nilai yang tidak memiliki konstruktor instans, gunakan metode .CreateInstance

Catatan

Dimulai dengan .NET Framework 2.0, metode ini dapat digunakan untuk mengakses anggota non-publik jika pemanggil telah diberikan ReflectionPermission dengan ReflectionPermissionFlag.RestrictedMemberAccess bendera dan jika set pemberian anggota non-publik dibatasi untuk set pemberian penelepon, atau subsetnya. (Lihat Pertimbangan Keamanan untuk Refleksi.) Untuk menggunakan fungsionalitas ini, aplikasi Anda harus menargetkan .NET Framework 3.5 atau yang lebih baru.

Lihat juga

Berlaku untuk