Activator.CreateInstance Yöntem

Tanım

Belirtilen parametrelerle en iyi eşleşen oluşturucuyu kullanarak belirtilen türün bir örneğini oluşturur.

Aşırı Yüklemeler

CreateInstance(AppDomain, String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)
Geçersiz.

Adlandırılmış derlemeyi ve belirtilen parametrelerle en iyi eşleşen oluşturucuyu kullanarak, adı belirtilen uzak etki alanında belirtilen türün bir örneğini oluşturur.

CreateInstance(AppDomain, String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])

Adlandırılmış derlemeyi ve belirtilen parametrelerle en iyi eşleşen oluşturucuyu kullanarak, adı belirtilen uzak etki alanında belirtilen türün bir örneğini oluşturur.

CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])

Adlandırılmış derlemeyi ve belirtilen parametrelerle en iyi eşleşen oluşturucuyu kullanarak adı belirtilen türün bir örneğini oluşturur.

CreateInstance(Type, BindingFlags, Binder, Object[], CultureInfo, Object[])

Belirtilen parametrelerle en iyi eşleşen oluşturucuyu kullanarak belirtilen türün bir örneğini oluşturur.

CreateInstance(Type, BindingFlags, Binder, Object[], CultureInfo)

Belirtilen parametrelerle en iyi eşleşen oluşturucuyu kullanarak belirtilen türün bir örneğini oluşturur.

CreateInstance(Type, Object[], Object[])

Belirtilen parametrelerle en iyi eşleşen oluşturucuyu kullanarak belirtilen türün bir örneğini oluşturur.

CreateInstance(String, String, Object[])

Adlandırılmış derlemeyi ve parametresiz oluşturucuyu kullanarak adı belirtilen türün bir örneğini oluşturur.

CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)
Geçersiz.

Adlandırılmış derlemeyi ve belirtilen parametrelerle en iyi eşleşen oluşturucuyu kullanarak adı belirtilen türün bir örneğini oluşturur.

CreateInstance(Type, Object[])

Belirtilen parametrelerle en iyi eşleşen oluşturucuyu kullanarak belirtilen türün bir örneğini oluşturur.

CreateInstance(Type, Boolean)

Bu türün parametresiz oluşturucuyu kullanarak belirtilen türün bir örneğini oluşturur.

CreateInstance(String, String)

Adlandırılmış derlemeyi ve parametresiz oluşturucuyu kullanarak adı belirtilen türün bir örneğini oluşturur.

CreateInstance(ActivationContext, String[])

Belirtilen nesne tarafından belirlenen ve belirtilen ActivationContext özel etkinleştirme verileriyle etkinleştirilen türün bir örneğini oluşturur.

CreateInstance(Type)

Bu türün parametresiz oluşturucuyu kullanarak belirtilen türün bir örneğini oluşturur.

CreateInstance(ActivationContext)

Belirtilen ActivationContext nesne tarafından belirlenen türün bir örneğini oluşturur.

CreateInstance(AppDomain, String, String)

Adlandırılmış derlemeyi ve parametresiz oluşturucuyu kullanarak belirtilen uzak etki alanında adı belirtilen türün bir örneğini oluşturur.

CreateInstance<T>()

Parametresiz oluşturucuyu kullanarak belirtilen genel tür parametresi tarafından belirlenen türün bir örneğini oluşturur.

CreateInstance(AppDomain, String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)

Dikkat

Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.

Adlandırılmış derlemeyi ve belirtilen parametrelerle en iyi eşleşen oluşturucuyu kullanarak, adı belirtilen uzak etki alanında belirtilen türün bir örneğini oluşturur.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstance(AppDomain ^ domain, System::String ^ assemblyName, System::String ^ typeName, bool ignoreCase, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ args, System::Globalization::CultureInfo ^ culture, cli::array <System::Object ^> ^ activationAttributes, System::Security::Policy::Evidence ^ securityAttributes);
public static System.Runtime.Remoting.ObjectHandle CreateInstance (AppDomain domain, string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes, System.Security.Policy.Evidence securityAttributes);
[System.Obsolete("Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
[System.Security.SecurityCritical]
public static System.Runtime.Remoting.ObjectHandle CreateInstance (AppDomain domain, string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes, System.Security.Policy.Evidence securityAttributes);
static member CreateInstance : AppDomain * string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
[<System.Obsolete("Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")>]
[<System.Security.SecurityCritical>]
static member CreateInstance : AppDomain * string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstance (domain As AppDomain, assemblyName As String, typeName As String, ignoreCase As Boolean, bindingAttr As BindingFlags, binder As Binder, args As Object(), culture As CultureInfo, activationAttributes As Object(), securityAttributes As Evidence) As ObjectHandle

Parametreler

domain
AppDomain

Adlı typeName türün oluşturulduğu etki alanı.

assemblyName
String

Adlı türün arandığı derlemenin adı typeName . ise assemblyNamenull, yürütülen derlemede arama yapılır.

typeName
String

Örneği oluşturulacak türün tam adı.

ignoreCase
Boolean

truearamasının büyük/küçük harfe duyarlı olmadığını belirtmek için; false aramanın büyük/küçük harfe duyarlı olduğunu belirtmek içintypeName.

bindingAttr
BindingFlags

Oluşturucu aramasını etkileyen sıfır veya daha fazla bit bayrağının typeName birleşimi. Sıfır ise bindingAttr , ortak oluşturucular için büyük/küçük harfe duyarlı bir arama yapılır.

binder
Binder

Oluşturucuyu aramak ve tanımlamak typeName için ve args kullanan bindingAttr bir nesne. ise bindernull, varsayılan bağlayıcı kullanılır.

args
Object[]

Çağrılacak oluşturucunun parametrelerini sayı, sıra ve tür olarak eşleşen bir bağımsız değişken dizisi. boş bir dizi veya nulliseargs, parametre alan oluşturucu (parametresiz oluşturucu) çağrılır.

culture
CultureInfo

Oluşturucu için typeName bildirilen resmi türlerle zorlamasını args yöneten kültüre özgü bilgiler. ise culturenull, CultureInfo geçerli iş parçacığı için kullanılır.

activationAttributes
Object[]

Etkinleştirmeye katılabilen bir veya daha fazla öznitelik dizisi. Bu genellikle tek UrlAttribute bir nesne içeren bir dizidir. uzak UrlAttribute nesneyi etkinleştirmek için gereken URL'yi belirtir.

securityAttributes
Evidence

Güvenlik ilkesi kararları almak ve kod izinleri vermek için kullanılan bilgiler.

Döndürülenler

Yeni oluşturulan nesneye erişmek için veya null değeri olmayan örnekler için Nullable<T> sarmalanmamış olması gereken bir tanıtıcı.

Öznitelikler

Özel durumlar

domain veya typeName şeklindedir null.

Eşleşen bir oluşturucu bulunamadı.

typename içinde assemblyNamebulunamadı.

assemblyName bulunamadı.

Çağıranın bu oluşturucuyu çağırma izni yoktur.

Soyut bir sınıfın örneği oluşturulamıyor veya bu üye geç bağlama mekanizmasıyla çağrıldı.

Yansıma aracılığıyla çağrılan oluşturucu bir özel durum oluşturdu.

COM türü veya GetTypeFromCLSIDaracılığıyla GetTypeFromProgID alınamadı.

, , ArgIterator, Voidve RuntimeArgumentHandle türlerinin TypedReferenceveya bu tür dizilerinin oluşturulması desteklenmez.

-veya-

activationAttributes boş bir dizi değildir ve oluşturulan tür türünden MarshalByRefObjecttüretilmez.

-veya-

En iyi eşleşen args oluşturucunun bağımsız değişkenleri vardır varargs .

assemblyName geçerli bir derleme değil.

-veya-

Ortak dil çalışma zamanı (CLR) sürüm 2.0 veya üzeri şu anda yüklüdür ve assemblyName CLR'nin şu anda yüklü olan sürümden sonraki bir sürümü için derlendi. .NET Framework 2.0, 3.0 ve 3.5 sürümlerinin tümünün CLR sürüm 2.0 kullandığını unutmayın.

Bir derleme veya modül iki farklı kanıtla iki kez yüklendi.

-veya-

Derleme adı veya kod tabanı geçersiz.

Açıklamalar

Konağın kısıtlı güvenlik izinlerine sahip bir uygulama etki alanında kod yürütmesi gerektiğinde kullanın CreateInstance .

Dönüş değerini açmak için kullanın ObjectHandle.Unwrap .

Şunlara uygulanır

CreateInstance(AppDomain, String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])

Belirtilen uzak etki alanında adı belirtilen türün bir örneğini, adlandırılmış derlemeyi ve belirtilen parametrelerle en iyi eşleşen oluşturucuyu kullanarak oluşturur.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstance(AppDomain ^ domain, System::String ^ assemblyName, System::String ^ typeName, bool ignoreCase, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ args, System::Globalization::CultureInfo ^ culture, cli::array <System::Object ^> ^ activationAttributes);
[System.Security.SecurityCritical]
public static System.Runtime.Remoting.ObjectHandle CreateInstance (AppDomain domain, string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes);
[<System.Security.SecurityCritical>]
static member CreateInstance : AppDomain * string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstance (domain As AppDomain, assemblyName As String, typeName As String, ignoreCase As Boolean, bindingAttr As BindingFlags, binder As Binder, args As Object(), culture As CultureInfo, activationAttributes As Object()) As ObjectHandle

Parametreler

domain
AppDomain

Adlı typeName türün oluşturulduğu etki alanı.

assemblyName
String

adlı türün arandığı derlemenin adı typeName . ise assemblyNamenull, yürütülen derlemede arama yapılır.

typeName
String

Örneği oluşturulacak türün tam adı.

ignoreCase
Boolean

truearamasının büyük/küçük harfe duyarlı olmadığını belirtmek için; false aramanın büyük/küçük harfe duyarlı olduğunu belirtmek içintypeName.

bindingAttr
BindingFlags

Oluşturucu aramasını etkileyen sıfır veya daha fazla bit bayrağının typeName birleşimi. Sıfır ise bindingAttr , ortak oluşturucular için büyük/küçük harfe duyarlı bir arama yapılır.

binder
Binder

Oluşturucuyu aramak ve tanımlamak typeName için ve args kullanan bindingAttr bir nesne. ise bindernull, varsayılan bağlayıcı kullanılır.

args
Object[]

Çağrılacak oluşturucunun parametrelerini sayı, sıra ve tür olarak eşleşen bir bağımsız değişken dizisi. boş bir dizi veya nulliseargs, parametre alan oluşturucu (parametresiz oluşturucu) çağrılır.

culture
CultureInfo

Oluşturucu için typeName bildirilen resmi türlerin zorlamasını args yöneten kültüre özgü bilgiler. ise culturenull, CultureInfo geçerli iş parçacığı için kullanılır.

activationAttributes
Object[]

Etkinleştirmeye katılabilen bir veya daha fazla öznitelik dizisi. Bu genellikle uzak nesneyi etkinleştirmek için gereken URL'yi belirten tek UrlAttribute bir nesne içeren bir dizidir.

Bu parametre istemci tarafından etkinleştirilen nesnelerle ilgilidir. İstemci etkinleştirmesi, geriye dönük uyumluluk için korunan ancak yeni geliştirme için önerilmez eski bir teknolojidir. Dağıtılmış uygulamalar bunun yerine Windows Communication Foundation kullanmalıdır.

Döndürülenler

Yeni oluşturulan nesneye erişmek için veya null değer içermeyen örnekler için Nullable<T> eşlenmemiş olması gereken bir tanıtıcı.

Öznitelikler

Özel durumlar

domain veya typeName şeklindedir null.

Eşleşen bir oluşturucu bulunamadı.

typename içinde assemblyNamebulunamadı.

assemblyName bulunamadı.

Çağıranın bu oluşturucuyu çağırma izni yoktur.

Soyut bir sınıfın örneği oluşturulamıyor veya bu üye geç bağlama mekanizmasıyla çağrıldı.

Yansıma aracılığıyla çağrılan oluşturucu bir özel durum oluşturdu.

COM türü veya GetTypeFromCLSIDaracılığıyla GetTypeFromProgID alınamadı.

, , ArgIterator, Voidve RuntimeArgumentHandle türlerinin TypedReferenceveya bu tür dizilerinin oluşturulması desteklenmez.

-veya-

activationAttributes boş bir dizi değildir ve oluşturulan tür türünden MarshalByRefObjecttüretilmez.

-veya-

En iyi eşleşen args oluşturucunun bağımsız değişkenleri vardır varargs .

assemblyName geçerli bir derleme değil.

-veya-

Ortak dil çalışma zamanı (CLR) sürüm 2.0 veya üzeri şu anda yüklüdür ve assemblyName CLR'nin şu anda yüklü olan sürümden sonraki bir sürümü için derlendi. .NET Framework 2.0, 3.0 ve 3.5 sürümlerinin tümünün CLR sürüm 2.0 kullandığını unutmayın.

Bir derleme veya modül iki farklı kanıtla iki kez yüklendi.

-veya-

Derleme adı veya kod tabanı geçersiz.

Açıklamalar

Konağın kısıtlı güvenlik izinlerine sahip bir uygulama etki alanında kod yürütmesi gerektiğinde kullanın CreateInstance .

Dönüş değerini açmak için kullanın ObjectHandle.Unwrap .

Şunlara uygulanır

CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])

Source:
Activator.RuntimeType.cs
Source:
Activator.RuntimeType.cs
Source:
Activator.RuntimeType.cs

Adlandırılmış derlemeyi ve belirtilen parametrelerle en iyi eşleşen oluşturucuyu kullanarak adı belirtilen türün bir örneğini oluşturur.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName, bool ignoreCase, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ args, System::Globalization::CultureInfo ^ culture, cli::array <System::Object ^> ^ activationAttributes);
public static System.Runtime.Remoting.ObjectHandle? CreateInstance (string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, object?[]? args, System.Globalization.CultureInfo? culture, object?[]? activationAttributes);
public static System.Runtime.Remoting.ObjectHandle CreateInstance (string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes);
static member CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstance (assemblyName As String, typeName As String, ignoreCase As Boolean, bindingAttr As BindingFlags, binder As Binder, args As Object(), culture As CultureInfo, activationAttributes As Object()) As ObjectHandle

Parametreler

assemblyName
String

adlı türün arandığı derlemenin adı typeName . ise assemblyNamenull, yürütülen derlemede arama yapılır.

typeName
String

Örneği oluşturulacak türün tam adı.

ignoreCase
Boolean

truearamasının büyük/küçük harfe duyarlı olmadığını belirtmek için; false aramanın büyük/küçük harfe duyarlı olduğunu belirtmek içintypeName.

bindingAttr
BindingFlags

Oluşturucu aramasını etkileyen sıfır veya daha fazla bit bayrağının typeName birleşimi. Sıfır ise bindingAttr , ortak oluşturucular için büyük/küçük harfe duyarlı bir arama yapılır.

binder
Binder

Oluşturucuyu aramak ve tanımlamak typeName için ve args kullanan bindingAttr bir nesne. ise bindernull, varsayılan bağlayıcı kullanılır.

args
Object[]

Çağrılacak oluşturucunun parametrelerini sayı, sıra ve tür olarak eşleşen bir bağımsız değişken dizisi. boş bir dizi veya nulliseargs, parametre alan oluşturucu (parametresiz oluşturucu) çağrılır.

culture
CultureInfo

Oluşturucu için typeName bildirilen resmi türlerin zorlamasını args yöneten kültüre özgü bilgiler. ise culturenull, CultureInfo geçerli iş parçacığı için kullanılır.

activationAttributes
Object[]

Etkinleştirmeye katılabilen bir veya daha fazla öznitelik dizisi. Bu genellikle uzak nesneyi etkinleştirmek için gereken URL'yi belirten tek UrlAttribute bir nesne içeren bir dizidir.

Bu parametre istemci tarafından etkinleştirilen nesnelerle ilgilidir. İstemci etkinleştirmesi, geriye dönük uyumluluk için korunan ancak yeni geliştirme için önerilmez eski bir teknolojidir. Dağıtılmış uygulamalar bunun yerine Windows Communication Foundation kullanmalıdır.

Döndürülenler

Yeni oluşturulan örneğe erişmek için veya null değer içermeyen örnekler için Nullable<T> sarmalanmamış olması gereken bir tanıtıcı.

Özel durumlar

typeName, null değeridir.

Eşleşen bir oluşturucu bulunamadı.

typename içinde assemblyNamebulunamadı.

assemblyName bulunamadı.

Çağıranın bu oluşturucuyu çağırma izni yoktur.

Soyut bir sınıfın örneği oluşturulamıyor veya bu üye geç bağlama mekanizmasıyla çağrıldı.

Yansıma aracılığıyla çağrılan oluşturucu bir özel durum oluşturdu.

COM türü veya GetTypeFromCLSIDaracılığıyla GetTypeFromProgID alınamadı.

, ArgIterator, , Voidve RuntimeArgumentHandle türlerinin TypedReferenceveya bu türlerin dizilerinin oluşturulması desteklenmez.

-veya-

activationAttributes boş bir dizi değildir ve oluşturulan tür'den MarshalByRefObjecttüretilmez.

-veya-

En iyi eşleşen args oluşturucunun bağımsız değişkenleri vardır varargs .

assemblyName geçerli bir derleme değil.

-veya-

Ortak dil çalışma zamanı (CLR) sürüm 2.0 veya üzeri şu anda yüklüdür ve assemblyName şu anda yüklü olan sürümden sonraki bir CLR sürümü için derlendi. .NET Framework 2.0, 3.0 ve 3.5 sürümlerinin tümünün CLR sürüm 2.0 kullandığını unutmayın.

Bir derleme veya modül iki farklı kanıtla iki kez yüklendi.

-veya-

Derleme adı veya kod tabanı geçersiz.

Açıklamalar

Dönüş değerini açmak için kullanın ObjectHandle.Unwrap .

Not

.NET Framework 2.0'dan başlayarak, çağıranın ReflectionPermission bayrağı verilmişse ve abonelik dışı türleri ve üyeleri içeren derlemenin izin kümesi çağıranın izin kümesiyle veya bunun bir alt kümesiyle ReflectionPermissionFlag.RestrictedMemberAccess kısıtlanmışsa, bu yöntem abonelik dışı türler ve üyeler oluşturmak için kullanılabilir. (Bkz. Yansıma için GüvenlikLe İlgili Dikkat Edilmesi Gerekenler.) Bu işlevi kullanmak için uygulamanızın 3.5 veya sonraki .NET Framework hedeflemesi gerekir.

Şunlara uygulanır

CreateInstance(Type, BindingFlags, Binder, Object[], CultureInfo, Object[])

Source:
Activator.RuntimeType.cs
Source:
Activator.RuntimeType.cs
Source:
Activator.RuntimeType.cs

Belirtilen parametrelerle en iyi eşleşen oluşturucuyu kullanarak belirtilen türün bir örneğini oluşturur.

public:
 static System::Object ^ CreateInstance(Type ^ type, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ args, System::Globalization::CultureInfo ^ culture, cli::array <System::Object ^> ^ activationAttributes);
public static object? CreateInstance (Type type, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, object?[]? args, System.Globalization.CultureInfo? culture, object?[]? activationAttributes);
public static object CreateInstance (Type type, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes);
static member CreateInstance : Type * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] -> obj
Public Shared Function CreateInstance (type As Type, bindingAttr As BindingFlags, binder As Binder, args As Object(), culture As CultureInfo, activationAttributes As Object()) As Object

Parametreler

type
Type

Oluşturulacak nesnenin türü.

bindingAttr
BindingFlags

Oluşturucu aramasını etkileyen sıfır veya daha fazla bit bayrağının type birleşimi. Sıfır ise bindingAttr , ortak oluşturucular için büyük/küçük harfe duyarlı bir arama yapılır.

binder
Binder

Oluşturucuyu aramak ve tanımlamak type için ve args kullanan bindingAttr bir nesne. ise bindernull, varsayılan bağlayıcı kullanılır.

args
Object[]

Çağrılacak oluşturucunun parametrelerini sayı, sıra ve tür olarak eşleşen bir bağımsız değişken dizisi. boş bir dizi veya nulliseargs, parametre alan oluşturucu (parametresiz oluşturucu) çağrılır.

culture
CultureInfo

Oluşturucu için type bildirilen resmi türlerin zorlamasını args yöneten kültüre özgü bilgiler. ise culturenull, CultureInfo geçerli iş parçacığı için kullanılır.

activationAttributes
Object[]

Etkinleştirmeye katılabilen bir veya daha fazla öznitelik dizisi. Bu genellikle uzak nesneyi etkinleştirmek için gereken URL'yi belirten tek UrlAttribute bir nesne içeren bir dizidir.

Bu parametre istemci tarafından etkinleştirilen nesnelerle ilgilidir. İstemci etkinleştirmesi, geriye dönük uyumluluk için korunan ancak yeni geliştirme için önerilmez eski bir teknolojidir. Dağıtılmış uygulamalar bunun yerine Windows Communication Foundation kullanmalıdır.

Döndürülenler

Yeni oluşturulan nesneye veya null değer içermeyen örneklere Nullable<T> başvuru.

Özel durumlar

type, null değeridir.

type bir RuntimeTypedeğildir.

-veya-

type açık bir genel türdür (yani ContainsGenericParameters özelliği döndürür true).

type bir TypeBuilderolamaz.

-veya-

, ArgIterator, , Voidve RuntimeArgumentHandle türlerinin TypedReferenceveya bu türlerin dizilerinin oluşturulması desteklenmez.

-veya-

activationAttributes boş bir dizi değildir ve oluşturulan tür'den MarshalByRefObjecttüretilmez.

-veya-

içeren type derleme ile Saveoluşturulan dinamik bir derlemedir.

-veya-

En iyi eşleşen args oluşturucunun bağımsız değişkenleri vardır varargs .

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

Çağıranın bu oluşturucuyu çağırma izni yoktur.

Soyut bir sınıfın örneği oluşturulamıyor veya bu üye geç bağlama mekanizmasıyla çağrıldı.

COM türü veya GetTypeFromCLSIDaracılığıyla GetTypeFromProgID alınamadı.

Eşleşen bir oluşturucu bulunamadı.

type bir COM nesnesidir, ancak türü elde etmek için kullanılan sınıf tanımlayıcısı geçersiz veya tanımlanan sınıf kaydedilmemiş.

type geçerli bir tür değil.

Açıklamalar

Çağrılacak oluşturucu, belirtilen bağlayıcı ve bağlama özniteliklerinin kısıtlamaları altında belirtilen bağımsız değişken listesiyle en özel eşleşmeyi sağlamalıdır.

Not

.NET Framework 2.0'dan başlayarak bu yöntem, çağıranın bayrağıyla verilmiş ReflectionPermission olması ve abonelik dışı türlerin ve üyelerin izin kümesinin çağıranın izin kümesiyle veya bunun bir alt kümesiyle ReflectionPermissionFlag.RestrictedMemberAccess sınırlı olması durumunda, abonelik dışı türlere ve üyelere erişmek için kullanılabilir. (Bkz. Yansıma için GüvenlikLe İlgili Dikkat Edilmesi Gerekenler.) Bu işlevi kullanmak için uygulamanızın .NET Framework 3.5 veya sonraki bir sürümü hedeflemesi gerekir.

Şunlara uygulanır

CreateInstance(Type, BindingFlags, Binder, Object[], CultureInfo)

Source:
Activator.cs
Source:
Activator.cs
Source:
Activator.cs

Belirtilen parametrelerle en iyi eşleşen oluşturucuyu kullanarak belirtilen türün bir örneğini oluşturur.

public:
 static System::Object ^ CreateInstance(Type ^ type, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ args, System::Globalization::CultureInfo ^ culture);
public static object? CreateInstance (Type type, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, object?[]? args, System.Globalization.CultureInfo? culture);
public static object CreateInstance (Type type, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture);
static member CreateInstance : Type * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo -> obj
Public Shared Function CreateInstance (type As Type, bindingAttr As BindingFlags, binder As Binder, args As Object(), culture As CultureInfo) As Object

Parametreler

type
Type

Oluşturulacak nesnenin türü.

bindingAttr
BindingFlags

Oluşturucu aramasını etkileyen sıfır veya daha fazla bit bayrağının type birleşimi. Sıfır ise bindingAttr , ortak oluşturucular için büyük/küçük harfe duyarlı bir arama yapılır.

binder
Binder

Oluşturucuyu aramak ve tanımlamak type için ve args kullanan bindingAttr bir nesne. ise bindernull, varsayılan bağlayıcı kullanılır.

args
Object[]

Çağrılacak oluşturucunun parametrelerini sayı, sıra ve tür olarak eşleşen bir bağımsız değişken dizisi. boş bir dizi veya nulliseargs, parametre alan oluşturucu (parametresiz oluşturucu) çağrılır.

culture
CultureInfo

Oluşturucu için type bildirilen resmi türlerle zorlamasını args yöneten kültüre özgü bilgiler. ise culturenull, CultureInfo geçerli iş parçacığı için kullanılır.

Döndürülenler

Yeni oluşturulan nesneye veya null değer içermeyen örneklere Nullable<T> başvuru.

Özel durumlar

type, null değeridir.

type bir RuntimeTypedeğildir.

-veya-

type açık bir genel türdür (yani özelliği ContainsGenericParameters döndürür true).

type bir TypeBuilderolamaz.

-veya-

, , ArgIterator, Voidve RuntimeArgumentHandle türlerinin TypedReferenceveya bu tür dizilerinin oluşturulması desteklenmez.

-veya-

öğesini içeren type derleme, ile Saveoluşturulmuş dinamik bir derlemedir.

-veya-

En iyi eşleşen args oluşturucunun bağımsız değişkenleri vardır varargs .

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

Çağıranın bu oluşturucuyu çağırma izni yoktur.

Soyut bir sınıfın örneği oluşturulamıyor veya bu üye geç bağlama mekanizmasıyla çağrıldı.

COM türü veya GetTypeFromCLSIDaracılığıyla GetTypeFromProgID alınamadı.

Eşleşen bir oluşturucu bulunamadı.

type bir COM nesnesidir, ancak türü almak için kullanılan sınıf tanımlayıcısı geçersiz veya tanımlanan sınıf kaydedilmemiş.

type geçerli bir tür değil.

Açıklamalar

Çağrılacak oluşturucu, belirtilen bağlayıcı ve bağlama özniteliklerinin kısıtlamaları altında belirtilen bağımsız değişken listesiyle en özel eşleşmeyi sağlamalıdır.

Not

.NET Framework 2.0'dan başlayarak, çağıranın bayrağıyla verilmiş ReflectionPermission olması ve abonelik dışı türleri ve üyeleri içeren derlemenin verme kümesinin çağıranın izin kümesiyle veya bunun bir alt kümesiyle ReflectionPermissionFlag.RestrictedMemberAccess sınırlı olması durumunda bu yöntem, abonelik dışı türlere ve üyelere erişmek için kullanılabilir. (Bkz. Yansıma için GüvenlikLe İlgili Dikkat Edilmesi Gerekenler.) Bu işlevi kullanmak için uygulamanızın .NET Framework 3.5 veya sonraki bir sürümü hedeflemesi gerekir.

Şunlara uygulanır

CreateInstance(Type, Object[], Object[])

Source:
Activator.cs
Source:
Activator.cs
Source:
Activator.cs

Belirtilen parametrelerle en iyi eşleşen oluşturucuyu kullanarak belirtilen türün bir örneğini oluşturur.

public:
 static System::Object ^ CreateInstance(Type ^ type, cli::array <System::Object ^> ^ args, cli::array <System::Object ^> ^ activationAttributes);
public static object? CreateInstance (Type type, object?[]? args, object?[]? activationAttributes);
public static object CreateInstance (Type type, object[] args, object[] activationAttributes);
static member CreateInstance : Type * obj[] * obj[] -> obj
Public Shared Function CreateInstance (type As Type, args As Object(), activationAttributes As Object()) As Object

Parametreler

type
Type

Oluşturulacak nesnenin türü.

args
Object[]

Çağrılacak oluşturucunun parametrelerini sayı, sıra ve tür olarak eşleşen bir bağımsız değişken dizisi. boş bir dizi veya nulliseargs, parametre alan oluşturucu (parametresiz oluşturucu) çağrılır.

activationAttributes
Object[]

Etkinleştirmeye katılabilen bir veya daha fazla öznitelik dizisi. Bu genellikle uzak nesneyi etkinleştirmek için gereken URL'yi belirten tek UrlAttribute bir nesne içeren bir dizidir.

Bu parametre istemci tarafından etkinleştirilen nesnelerle ilgilidir. İstemci etkinleştirmesi, geriye dönük uyumluluk için tutulan ancak yeni geliştirme için önerilmez eski bir teknolojidir. Dağıtılmış uygulamalar bunun yerine Windows Communication Foundation kullanmalıdır.

Döndürülenler

Yeni oluşturulan nesneye veya null değer içermeyen örneklere Nullable<T> başvuru.

Özel durumlar

type, null değeridir.

type bir RuntimeTypedeğildir.

-veya-

type açık bir genel türdür (yani özelliği ContainsGenericParameters döndürür true).

type bir TypeBuilderolamaz.

-veya-

, , ArgIterator, Voidve RuntimeArgumentHandle türlerinin TypedReferenceveya bu tür dizilerinin oluşturulması desteklenmez.

-veya-

activationAttributes boş bir dizi değildir ve oluşturulan tür türünden MarshalByRefObjecttüretilmez.

-veya-

öğesini içeren type derleme, ile Saveoluşturulmuş dinamik bir derlemedir.

-veya-

En iyi eşleşen args oluşturucunun bağımsız değişkenleri vardır varargs .

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

Çağıranın bu oluşturucuyu çağırma izni yoktur.

Soyut bir sınıfın örneği oluşturulamıyor veya bu üye geç bağlama mekanizmasıyla çağrıldı.

COM türü veya GetTypeFromCLSIDaracılığıyla GetTypeFromProgID alınamadı.

Eşleşen genel oluşturucu bulunamadı.

type bir COM nesnesidir, ancak türü almak için kullanılan sınıf tanımlayıcısı geçersiz veya tanımlanan sınıf kaydedilmemiş.

type geçerli bir tür değil.

Açıklamalar

Çağrılacak oluşturucunun erişilebilir olması ve belirtilen bağımsız değişken listesiyle en özel eşleşmeyi sağlaması gerekir.

Not

.NET Framework 2.0'dan başlayarak, çağıranın bayrağıyla verilmiş ReflectionPermission olması ve abonelik dışı türleri içeren derlemenin verme kümesinin çağıranın izin kümesiyle veya bunun bir alt kümesiyle ReflectionPermissionFlag.RestrictedMemberAccess sınırlı olması durumunda, bu yöntem abonelik dışı türlere erişmek için kullanılabilir. (Bkz. Yansıma için GüvenlikLe İlgili Dikkat Edilmesi Gerekenler.) Bu işlevi kullanmak için uygulamanızın .NET Framework 3.5 veya sonraki bir sürümü hedeflemesi gerekir.

Şunlara uygulanır

CreateInstance(String, String, Object[])

Source:
Activator.RuntimeType.cs
Source:
Activator.RuntimeType.cs
Source:
Activator.RuntimeType.cs

Adlandırılmış derlemeyi ve parametresiz oluşturucuyu kullanarak adı belirtilen türün bir örneğini oluşturur.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName, cli::array <System::Object ^> ^ activationAttributes);
public static System.Runtime.Remoting.ObjectHandle? CreateInstance (string assemblyName, string typeName, object?[]? activationAttributes);
public static System.Runtime.Remoting.ObjectHandle CreateInstance (string assemblyName, string typeName, object[] activationAttributes);
static member CreateInstance : string * string * obj[] -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstance (assemblyName As String, typeName As String, activationAttributes As Object()) As ObjectHandle

Parametreler

assemblyName
String

Adlı türün arandığı derlemenin adı typeName . ise assemblyNamenull, yürütülen derlemede arama yapılır.

typeName
String

Örneği oluşturulacak türün tam adı.

activationAttributes
Object[]

Etkinleştirmeye katılabilen bir veya daha fazla öznitelik dizisi. Bu genellikle uzak nesneyi etkinleştirmek için gereken URL'yi belirten tek UrlAttribute bir nesne içeren bir dizidir.

Bu parametre istemci tarafından etkinleştirilen nesnelerle ilgilidir. İstemci etkinleştirmesi, geriye dönük uyumluluk için korunan ancak yeni geliştirme için önerilmez eski bir teknolojidir. Dağıtılmış uygulamalar bunun yerine Windows Communication Foundation kullanmalıdır.

Döndürülenler

Yeni oluşturulan nesneye veya null örneklere erişmek için Nullable<T> eşlenmemiş olması gereken bir tanıtıcı.

Özel durumlar

typeName, null değeridir.

Eşleşen genel oluşturucu bulunamadı.

typename içinde assemblyNamebulunamadı.

assemblyName bulunamadı.

Çağıranın bu oluşturucuyu çağırma izni yoktur.

Soyut bir sınıfın örneği oluşturulamıyor veya bu üye geç bağlama mekanizmasıyla çağrıldı.

COM türü veya GetTypeFromCLSIDaracılığıyla GetTypeFromProgID alınamadı.

, , ArgIterator, Voidve RuntimeArgumentHandle türlerinin TypedReferenceveya bu tür dizilerinin oluşturulması desteklenmez.

-veya-

activationAttributes boş bir dizi değildir ve oluşturulan tür türünden MarshalByRefObjecttüretilmez.

-veya-

activationAttributes bir UrlAttribute

Dizi.

assemblyName geçerli bir derleme değil.

-veya-

Ortak dil çalışma zamanı (CLR) sürüm 2.0 veya üzeri şu anda yüklüdür ve assemblyName CLR'nin şu anda yüklü olan sürümden sonraki bir sürümü için derlendi. .NET Framework 2.0, 3.0 ve 3.5 sürümlerinin tümünün CLR sürüm 2.0 kullandığını unutmayın.

Bir derleme veya modül iki farklı kanıtla iki kez yüklendi.

-veya-

Derleme adı veya kod tabanı geçersiz.

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

-veya-

içinde activationAttributesbelirtilen bir hedefte uzaktan etkinleştirme denenirken bir hata oluştu.

Açıklamalar

Dönüş değerini açmak için kullanın ObjectHandle.Unwrap .

Not

.NET Framework 2.0'dan başlayarak, çağıranın ReflectionPermission bayrağı verilmişse ve abonelik dışı türlerin izin kümesi çağıranın izin kümesiyle veya bunun bir alt kümesiyle ReflectionPermissionFlag.RestrictedMemberAccess kısıtlanmışsa, bu yöntem abonelik dışı türler oluşturmak için kullanılabilir. (Bkz. Yansıma için GüvenlikLe İlgili Dikkat Edilmesi Gerekenler.) Bu işlevi kullanmak için uygulamanızın 3.5 veya sonraki .NET Framework hedeflemesi gerekir.

Şunlara uygulanır

CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)

Dikkat

Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.

Adlandırılmış derlemeyi ve belirtilen parametrelerle en iyi eşleşen oluşturucuyu kullanarak adı belirtilen türün bir örneğini oluşturur.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName, bool ignoreCase, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ args, System::Globalization::CultureInfo ^ culture, cli::array <System::Object ^> ^ activationAttributes, System::Security::Policy::Evidence ^ securityInfo);
public static System.Runtime.Remoting.ObjectHandle CreateInstance (string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes, System.Security.Policy.Evidence securityInfo);
[System.Obsolete("Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
public static System.Runtime.Remoting.ObjectHandle CreateInstance (string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes, System.Security.Policy.Evidence securityInfo);
static member CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
[<System.Obsolete("Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")>]
static member CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstance (assemblyName As String, typeName As String, ignoreCase As Boolean, bindingAttr As BindingFlags, binder As Binder, args As Object(), culture As CultureInfo, activationAttributes As Object(), securityInfo As Evidence) As ObjectHandle

Parametreler

assemblyName
String

adlı türün arandığı derlemenin adı typeName . ise assemblyNamenull, yürütülen derlemede arama yapılır.

typeName
String

Örneği oluşturulacak türün tam adı.

ignoreCase
Boolean

truearamasının büyük/küçük harfe duyarlı olmadığını belirtmek için; false aramanın büyük/küçük harfe duyarlı olduğunu belirtmek içintypeName.

bindingAttr
BindingFlags

Oluşturucu aramasını etkileyen sıfır veya daha fazla bit bayrağının typeName birleşimi. Sıfır ise bindingAttr , ortak oluşturucular için büyük/küçük harfe duyarlı bir arama yapılır.

binder
Binder

Oluşturucuyu aramak ve tanımlamak typeName için ve args kullanan bindingAttr bir nesne. ise bindernull, varsayılan bağlayıcı kullanılır.

args
Object[]

Çağrılacak oluşturucunun parametrelerini sayı, sıra ve tür olarak eşleşen bir bağımsız değişken dizisi. boş bir dizi veya nulliseargs, parametre alan oluşturucu (parametresiz oluşturucu) çağrılır.

culture
CultureInfo

Oluşturucu için typeName bildirilen resmi türlerin zorlamasını args yöneten kültüre özgü bilgiler. ise culturenull, CultureInfo geçerli iş parçacığı için kullanılır.

activationAttributes
Object[]

Etkinleştirmeye katılabilen bir veya daha fazla öznitelik dizisi. Bu genellikle uzak nesneyi etkinleştirmek için gereken URL'yi belirten tek UrlAttribute bir nesne içeren bir dizidir.

Bu parametre istemci tarafından etkinleştirilen nesnelerle ilgilidir. İstemci etkinleştirmesi, geriye dönük uyumluluk için korunan ancak yeni geliştirme için önerilmez eski bir teknolojidir. Dağıtılmış uygulamalar bunun yerine Windows Communication Foundation kullanmalıdır.

securityInfo
Evidence

Güvenlik ilkesi kararları almak ve kod izinleri vermek için kullanılan bilgiler.

Döndürülenler

Yeni oluşturulan nesneye erişmek için veya null değer içermeyen örnekler için Nullable<T> eşlenmemiş olması gereken bir tanıtıcı.

Öznitelikler

Özel durumlar

typeName, null değeridir.

Eşleşen bir oluşturucu bulunamadı.

typename içinde assemblyNamebulunamadı.

assemblyName bulunamadı.

Çağıranın bu oluşturucuyu çağırma izni yoktur.

Soyut bir sınıfın örneği oluşturulamıyor veya bu üye geç bağlama mekanizmasıyla çağrıldı.

Yansıma aracılığıyla çağrılan oluşturucu bir özel durum oluşturdu.

COM türü veya GetTypeFromCLSIDaracılığıyla GetTypeFromProgID alınamadı.

, ArgIterator, , Voidve RuntimeArgumentHandle türlerinin TypedReferenceveya bu türlerin dizilerinin oluşturulması desteklenmez.

-veya-

activationAttributes boş bir dizi değildir ve oluşturulan tür'den MarshalByRefObjecttüretilmez.

-veya-

En iyi eşleşen args oluşturucunun bağımsız değişkenleri vardır varargs .

assemblyName geçerli bir derleme değil.

-veya-

Ortak dil çalışma zamanı (CLR) sürüm 2.0 veya üzeri şu anda yüklüdür ve assemblyName şu anda yüklü olan sürümden sonraki bir CLR sürümü için derlendi. .NET Framework 2.0, 3.0 ve 3.5 sürümlerinin tümünün CLR sürüm 2.0 kullandığını unutmayın.

Bir derleme veya modül iki farklı kanıtla iki kez yüklendi.

-veya-

Derleme adı veya kod tabanı geçersiz.

Açıklamalar

Dönüş değerini açmak için kullanın ObjectHandle.Unwrap .

Not

.NET Framework 2.0'dan başlayarak, çağıranın ReflectionPermission bayrağı verilmişse ve abonelik dışı türleri ve üyeleri içeren derlemenin izin kümesi çağıranın izin kümesiyle veya bunun bir alt kümesiyle ReflectionPermissionFlag.RestrictedMemberAccess kısıtlanmışsa, bu yöntem abonelik dışı türler ve üyeler oluşturmak için kullanılabilir. (Bkz. Yansıma için GüvenlikLe İlgili Dikkat Edilmesi Gerekenler.) Bu işlevi kullanmak için uygulamanızın 3.5 veya sonraki .NET Framework hedeflemesi gerekir.

Şunlara uygulanır

CreateInstance(Type, Object[])

Source:
Activator.cs
Source:
Activator.cs
Source:
Activator.cs

Belirtilen parametrelerle en iyi eşleşen oluşturucuyu kullanarak belirtilen türün bir örneğini oluşturur.

public:
 static System::Object ^ CreateInstance(Type ^ type, ... cli::array <System::Object ^> ^ args);
public:
 static System::Object ^ CreateInstance(Type ^ type, cli::array <System::Object ^> ^ args);
public static object CreateInstance (Type type, params object[] args);
public static object? CreateInstance (Type type, params object?[]? args);
public static object CreateInstance (Type type, object[] args);
static member CreateInstance : Type * obj[] -> obj
Public Shared Function CreateInstance (type As Type, ParamArray args As Object()) As Object
Public Shared Function CreateInstance (type As Type, args As Object()) As Object

Parametreler

type
Type

Oluşturulacak nesnenin türü.

args
Object[]

Çağrılacak oluşturucunun parametrelerini sayı, sıra ve tür olarak eşleşen bir bağımsız değişken dizisi. boş bir dizi veya nulliseargs, parametre alan oluşturucu (parametresiz oluşturucu) çağrılır.

Döndürülenler

Yeni oluşturulan nesneye veya null değer içermeyen örneklere Nullable<T> başvuru.

Özel durumlar

type, null değeridir.

type bir RuntimeTypedeğildir.

-veya-

type açık bir genel türdür (yani ContainsGenericParameters özelliği döndürür true).

type bir TypeBuilderolamaz.

-veya-

, ArgIterator, , Voidve RuntimeArgumentHandle türlerinin TypedReferenceveya bu türlerin dizilerinin oluşturulması desteklenmez.

-veya-

içeren type derleme ile Saveoluşturulan dinamik bir derlemedir.

-veya-

En iyi eşleşen args oluşturucunun bağımsız değişkenleri vardır varargs .

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

Çağıranın bu oluşturucuyu çağırma izni yoktur.

Not: Windows Mağazası uygulamaları için .NET'te veya Taşınabilir Sınıf Kitaplığı'nda bunun yerine temel sınıf özel durumunu MemberAccessExceptionyakalayın.

Soyut bir sınıfın örneği oluşturulamıyor veya bu üye geç bağlama mekanizmasıyla çağrıldı.

COM türü veya GetTypeFromCLSIDaracılığıyla GetTypeFromProgID alınamadı.

Eşleşen genel oluşturucu bulunamadı.

Not: Windows Mağazası uygulamaları için .NET'te veya Taşınabilir Sınıf Kitaplığı'nda bunun yerine temel sınıf özel durumunu MissingMemberExceptionyakalayın.

type bir COM nesnesidir, ancak türü elde etmek için kullanılan sınıf tanımlayıcısı geçersiz veya tanımlanan sınıf kaydedilmemiş.

type geçerli bir tür değil.

Örnekler

Aşağıdaki örnek, nesnesini String oluşturmak için yöntemini çağırırCreateInstance(Type, Object[]). On dördüncü konumdan String.String(Char[], Int32, Int32) başlayarak bir karakter dizisinden on öğe içeren bir dize örneği oluşturmak için oluşturucuyu çağırır.

using System;

public class Example
{
   public static void Main()
   {
      // Initialize array of characters from a to z.
      char[] chars = new char[26];
      for (int ctr = 0; ctr < 26; ctr++)
         chars[ctr] = (char) (ctr + 0x0061);

      object obj = Activator.CreateInstance(typeof(string),
                                            new object[] { chars, 13, 10 } );
      Console.WriteLine(obj);
   }
}
// The example displays the following output:
//       nopqrstuvw
open System

// Initialize array of characters from a to z.
let chars = [| 'a' .. 'z' |]

let obj = Activator.CreateInstance(typeof<string>, chars[13..22])

printfn $"{obj}"

// The example displays the following output:
//       nopqrstuvw
Module Example
   Public Sub Main()
      ' Initialize array of characters from a to z.
      Dim chars(25) As Char 
      For ctr As Short = 0 To 25
         chars(ctr) = ChrW(ctr + &h0061)
      Next 
      Dim obj As Object = Activator.CreateInstance(GetType(String),
                                                   { chars, 13, 10 })
      Console.WriteLine(obj)                                          
   End Sub
End Module
' The example displays the following output:
'       nopqrstuvw

Aşağıdaki örnek, öğeleri bir oluşturucuya geçirilecek bağımsız değişkenler olan pürüzlü bir String dizi oluşturur. Örnek daha sonra uygun dize oluşturucuyu CreateInstance(Type, Object[]) çağırmak için her diziyi yöntemine geçirir.

using System;

public class Example
{
   public static void Main()
   {
      char[] characters = { 'a', 'b', 'c', 'd', 'e', 'f' };
      object[][] arguments = new object[3][] { new object[] { characters },
                                               new object[] { characters, 1, 4 },
                                               new object[] { characters[1], 20 } };

      for (int ctr = 0; ctr <= arguments.GetUpperBound(0); ctr++) {
         object[] args = arguments[ctr];
         object result = Activator.CreateInstance(typeof(string), args);
         Console.WriteLine("{0}: {1}", result.GetType().Name, result);
      }
   }
}
// The example displays the following output:
//    String: abcdef
//    String: bcde
//    String: bbbbbbbbbbbbbbbbbbbb
open System

let chars = [| 'a' .. 'f' |]

let arguments =
    [| chars
       chars[1..4]
       Array.create 20 chars[1] |]

for args in arguments do
    let result =
        Activator.CreateInstance(typeof<string>, args)

    printfn $"{result.GetType().Name}: {result}"

// The example displays the following output:
//    String: abcdef
//    String: bcde
//    String: bbbbbbbbbbbbbbbbbbbb
Module Example
   Public Sub Main()
      Dim characters() As Char = { "a"c, "b"c, "c"c, "d"c, "e"c, "f"c }
      Dim arguments()() As Object = new Object(2)() { New Object() { characters },
                                                      New Object() { characters, 1, 4 },
                                                      New Object() { characters(1), 20 } }

      For ctr As Integer = 0 To arguments.GetUpperBound(0)
         Dim args() As Object = arguments(ctr)
         Dim result As Object = Activator.CreateInstance(GetType(String), args)
         Console.WriteLine("{0}: {1}", result.GetType().Name, result)
      Next
   End Sub
End Module
' The example displays the following output:
'       String: abcdef
'       String: bcde
'       String: bbbbbbbbbbbbbbbbbbbb

Açıklamalar

Çağrılacak oluşturucunun erişilebilir olması ve belirtilen bağımsız değişken listesiyle en özel eşleşmeyi sağlaması gerekir.

Not

.NET Framework 2.0'dan başlayarak, çağıranın ReflectionPermission bayrağı verilmişse ve abonelik dışı türleri içeren derlemenin izin kümesi çağıranın izin kümesiyle veya bunun bir alt kümesiyle ReflectionPermissionFlag.RestrictedMemberAccess kısıtlanmışsa, bu yöntem abonelik dışı türlere erişmek için kullanılabilir. (Bkz. Yansıma için GüvenlikLe İlgili Dikkat Edilmesi Gerekenler.) Bu işlevi kullanmak için uygulamanızın 3.5 veya sonraki .NET Framework hedeflemesi gerekir.

Şunlara uygulanır

CreateInstance(Type, Boolean)

Source:
Activator.RuntimeType.cs
Source:
Activator.RuntimeType.cs
Source:
Activator.RuntimeType.cs

Bu türün parametresiz oluşturucuyu kullanarak belirtilen türün bir örneğini oluşturur.

public:
 static System::Object ^ CreateInstance(Type ^ type, bool nonPublic);
public static object? CreateInstance (Type type, bool nonPublic);
public static object CreateInstance (Type type, bool nonPublic);
static member CreateInstance : Type * bool -> obj
Public Shared Function CreateInstance (type As Type, nonPublic As Boolean) As Object

Parametreler

type
Type

Oluşturulacak nesnenin türü.

nonPublic
Boolean

true ortak veya nonpublic parametresiz oluşturucu eşleşebiliyorsa; false yalnızca ortak bir parametresiz oluşturucu eşleşebiliyorsa.

Döndürülenler

Yeni oluşturulan nesneye veya null örneklere Nullable<T> başvuru.

Özel durumlar

type, null değeridir.

type bir RuntimeTypedeğildir.

-veya-

type açık bir genel türdür (yani ContainsGenericParameters özelliği döndürür true).

type bir TypeBuilderolamaz.

-veya-

, ArgIterator, , Voidve RuntimeArgumentHandle türlerinin TypedReferenceveya bu türlerin dizilerinin oluşturulması desteklenmez.

-veya-

içeren type derleme ile Saveoluşturulan dinamik bir derlemedir.

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

Çağıranın bu oluşturucuyu çağırma izni yoktur.

Soyut bir sınıfın örneği oluşturulamıyor veya bu üye geç bağlama mekanizmasıyla çağrıldı.

COM türü veya GetTypeFromCLSIDaracılığıyla GetTypeFromProgID alınamadı.

Eşleşen genel oluşturucu bulunamadı.

type bir COM nesnesidir, ancak türü elde etmek için kullanılan sınıf tanımlayıcısı geçersiz veya tanımlanan sınıf kaydedilmemiş.

type geçerli bir tür değil.

Açıklamalar

Not

.NET Framework 2.0'dan başlayarak, çağıranın bayrağıyla verilmiş ReflectionPermission olması ve abonelik dışı türleri ve üyeleri içeren derlemenin verme kümesinin çağıranın izin kümesiyle veya bunun bir alt kümesiyle ReflectionPermissionFlag.RestrictedMemberAccess sınırlı olması durumunda bu yöntem, abonelik dışı türlere ve üyelere erişmek için kullanılabilir. (Bkz. Yansıma için GüvenlikLe İlgili Dikkat Edilmesi Gerekenler.) Bu işlevi kullanmak için uygulamanızın .NET Framework 3.5 veya sonraki bir sürümü hedeflemesi gerekir.

Şunlara uygulanır

CreateInstance(String, String)

Source:
Activator.RuntimeType.cs
Source:
Activator.RuntimeType.cs
Source:
Activator.RuntimeType.cs

Adlandırılmış derlemeyi ve parametresiz oluşturucuyu kullanarak adı belirtilen türün bir örneğini oluşturur.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName);
public static System.Runtime.Remoting.ObjectHandle? CreateInstance (string assemblyName, string typeName);
public static System.Runtime.Remoting.ObjectHandle CreateInstance (string assemblyName, string typeName);
static member CreateInstance : string * string -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstance (assemblyName As String, typeName As String) As ObjectHandle

Parametreler

assemblyName
String

Adlı türün arandığı derlemenin adı typeName . ise assemblyNamenull, yürütülen derlemede arama yapılır.

typeName
String

Örneği oluşturulacak türün tam adı.

Döndürülenler

Yeni oluşturulan nesneye veya null örneklere erişmek için Nullable<T> sarmalanmamış olması gereken bir tanıtıcı.

Özel durumlar

typeName, null değeridir.

Eşleşen genel oluşturucu bulunamadı.

typename içinde assemblyNamebulunamadı.

assemblyName bulunamadı.

Çağıranın bu oluşturucuyu çağırma izni yoktur.

Soyut bir sınıfın örneğini oluşturamazsınız veya bu üye geç bağlama mekanizmasıyla çağrıldı.

Yansıma aracılığıyla çağrılan oluşturucu bir özel durum oluşturdu.

COM türü veya GetTypeFromCLSIDaracılığıyla GetTypeFromProgID alınamadı.

, , ArgIterator, Voidve RuntimeArgumentHandle türlerinin TypedReferenceveya bu tür dizilerinin oluşturulması desteklenmez.

assemblyName geçerli bir derleme değil.

-veya-

Ortak dil çalışma zamanı (CLR) sürüm 2.0 veya üzeri şu anda yüklüdür ve assemblyName CLR'nin şu anda yüklü olan sürümden sonraki bir sürümü için derlendi. .NET Framework 2.0, 3.0 ve 3.5 sürümlerinin tümünün CLR sürüm 2.0 kullandığını unutmayın.

Bir derleme veya modül iki farklı kanıtla iki kez yüklendi.

-veya-

Derleme adı veya kod tabanı geçersiz.

Örnekler

Aşağıdaki örnek adlı derlemede adlı PersonPersonInfobir sınıfı tanımlar. Person sınıfının biri parametresiz olan iki oluşturucuya sahip olduğunu unutmayın.

using System;

public class Person
{
   private string _name;

   public Person()
   { }

   public Person(string name)
   {
      this._name = name;
   }

   public string Name
   { get { return this._name; }
     set { this._name = value; } }

   public override string ToString()
   {
      return this._name;
   }
}
type Person(name) =
    member val Name = name with get, set

    override this.ToString() = this.Name

    new () = Person Unchecked.defaultof<string>
Public Class Person
   Private _name As String
   
   Public Sub New()
   End Sub
   
   Public Sub New(name As String)
      Me._name = name
   End Sub
   
   Public Property Name As String
      Get
         Return Me._name
      End Get
      Set
         Me._name = value
      End Set
   End Property
   
   Public Overrides Function ToString() As String
      Return Me._name
   End Function
End Class

Aşağıdaki örnek, sınıfını CreateInstance(String, String) örneklemek Person için yöntemini çağırır. Projeye eklenecek PersonInfo.dll başvurusu gerektirir. CreateInstance(String, String) yöntemi sınıf parametresiz oluşturucuyu Person çağırdığından, örnek özelliğine Name bir değer atar.

using System;
using System.Runtime.Remoting;

public class Example
{
   public static void Main()
   {
      ObjectHandle handle = Activator.CreateInstance("PersonInfo", "Person");
      Person p = (Person) handle.Unwrap();
      p.Name = "Samuel";
      Console.WriteLine(p);
   }
}
// The example displays the following output:
//        Samuel
open System

let handle = Activator.CreateInstance("PersonInfo", "Person")
let p = handle.Unwrap() :?> Person
p.Name <- "Samuel"
printfn $"{p}"

// The example displays the following output:
//        Samuel
Imports System.Runtime.Remoting

Module Example
   Public Sub Main()
      Dim handle As ObjectHandle = Activator.CreateInstance("PersonInfo", "Person")
      Dim p As Person = CType(handle.Unwrap(), Person)
      p.Name = "Samuel"
      Console.WriteLine(p)
   End Sub
End Module
' The example displays the following output:
'       Samuel

Ancak, CreateInstance makine sınırlarını aşan veya tasarım zamanında bilinmeyen bir türün örneğini oluşturmak için sık sık çağrılır. Bu durumda, projeye derleme başvurusu ekleyemezsiniz ve türün üyelerine erken bağlı çağrılar yapamazsınız. Bu sınırlamayı geçici olarak çözmek için aşağıdaki örnek, nesnesinin CreateInstanceName özelliğine bir değer atamak ve değerini Person görüntülemek için yansıma ile birlikte yöntemini kullanır.

using System;
using System.Reflection;
using System.Runtime.Remoting;

public class Example
{
   public static void Main()
   {
      ObjectHandle handle = Activator.CreateInstance("PersonInfo", "Person");
      object p = handle.Unwrap();
      Type t = p.GetType();
      PropertyInfo prop = t.GetProperty("Name");
      if (prop != null)
         prop.SetValue(p, "Samuel");

      MethodInfo method = t.GetMethod("ToString");
      object retVal = method.Invoke(p, null);
      if (retVal != null)
         Console.WriteLine(retVal);
   }
}
// The example displays the following output:
//        Samuel
open System

let handle =
    Activator.CreateInstance("PersonInfo", "Person")

let p = handle.Unwrap()
let t = p.GetType()
let prop = t.GetProperty "Name"

if not (isNull prop) then
    prop.SetValue(p, "Samuel")

let method = t.GetMethod "ToString"
let retVal = method.Invoke(p, null)

if not (isNull retVal) then
    printfn $"{retVal}"

// The example displays the following output:
//        Samuel
Imports System.Reflection
Imports System.Runtime.Remoting

Module Example
   Public Sub Main()
      Dim handle As ObjectHandle = Activator.CreateInstance("PersonInfo", "Person")
      Dim p As Object = handle.Unwrap()
      Dim t As Type = p.GetType()
      Dim prop As PropertyInfo = t.GetProperty("Name")
      if Not prop Is Nothing Then
         prop.SetValue(p, "Samuel")
      End If   
      Dim method As MethodInfo = t.GetMethod("ToString")
      Dim retVal As Object = method.Invoke(p, Nothing) 
      If Not retVal Is Nothing Then
         Console.WriteLine(retVal)
      End If
   End Sub
End Module
' The example displays the following output:
'       Samuel

Açıklamalar

Dönüş değerini açmak için kullanın ObjectHandle.Unwrap .

assemblyName aşağıdakilerden biri olabilir:

  • Yolu veya dosya uzantısı olmayan bir derlemenin basit adı. Örneğin, yolu ve adı .\bin\TypeExtensions.dll olan bir derlemeyi belirtirsiniz TypeExtensions .

  • basit adı, sürümü, kültürü ve ortak anahtar belirtecini içeren imzalı derlemenin tam adı; örneğin, "TypeExtensions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=181869f2f7435b51".

Ortak dil çalışma zamanının derlemeleri tanımlama ve yükleme hakkında daha fazla bilgi için bkz. Çalışma Zamanı Derlemeleri Nasıl Bulur? Derleme konumlarını tanımlamak için uygulama yapılandırma dosyasını kullanma hakkında bilgi için bkz. Derlemenin Konumunu Belirtme. Bulunursa assemblyName , varsayılan bağlamda yüklenir.

Not

.NET Framework 2.0'dan başlayarak, çağıranın bayrağıyla verilmiş ReflectionPermission olması ve abonelik dışı türleri içeren derlemenin izin kümesi çağıranın izin kümesiyle veya bunun bir alt kümesiyle ReflectionPermissionFlag.RestrictedMemberAccess sınırlı olması durumunda, bu yöntem abonelik dışı türler oluşturmak için kullanılabilir. (Bkz. Yansıma için GüvenlikLe İlgili Dikkat Edilmesi Gerekenler.) Bu işlevi kullanmak için uygulamanızın .NET Framework 3.5 veya sonraki bir sürümü hedeflemesi gerekir.

Şunlara uygulanır

CreateInstance(ActivationContext, String[])

Belirtilen nesne tarafından belirlenen ve belirtilen ActivationContext özel etkinleştirme verileriyle etkinleştirilen türün bir örneğini oluşturur.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstance(ActivationContext ^ activationContext, cli::array <System::String ^> ^ activationCustomData);
public static System.Runtime.Remoting.ObjectHandle CreateInstance (ActivationContext activationContext, string[] activationCustomData);
static member CreateInstance : ActivationContext * string[] -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstance (activationContext As ActivationContext, activationCustomData As String()) As ObjectHandle

Parametreler

activationContext
ActivationContext

Oluşturulacak nesneyi belirten bir etkinleştirme bağlam nesnesi.

activationCustomData
String[]

Özel etkinleştirme verileri içeren bir Unicode dize dizisi.

Döndürülenler

Yeni oluşturulan nesneye veya null örneklere erişmek için Nullable<T> sarmalanmamış olması gereken bir tanıtıcı.

Açıklamalar

ObjectHandle.Unwrap Dönüş değerini açmak için yöntemini kullanın.

Etkinleştirme bağlamı, etki alanı ilkesini ayarlamak ve uygulama tabanlı bir güvenlik modeli sağlamak için bildirim tabanlı etkinleştirme sırasında kullanılır. sınıfı, ActivationContext uygulama bildirimine erişim sağlayan bir ApplicationIdentity nesnesi içerir. Daha fazla bilgi için sınıfına ApplicationSecurityManager bakın.

Ayrıca bkz.

Şunlara uygulanır

CreateInstance(Type)

Source:
Activator.cs
Source:
Activator.cs
Source:
Activator.cs

Bu türün parametresiz oluşturucuyu kullanarak belirtilen türün bir örneğini oluşturur.

public:
 static System::Object ^ CreateInstance(Type ^ type);
public static object CreateInstance (Type type);
public static object? CreateInstance (Type type);
static member CreateInstance : Type -> obj
Public Shared Function CreateInstance (type As Type) As Object

Parametreler

type
Type

Oluşturulacak nesnenin türü.

Döndürülenler

Yeni oluşturulan nesneye veya null örneklere Nullable<T> başvuru.

Özel durumlar

type, null değeridir.

type bir RuntimeTypedeğildir.

-veya-

type açık bir genel türdür (yani özelliği ContainsGenericParameters döndürür true).

type bir TypeBuilderolamaz.

-veya-

, , ArgIterator, Voidve RuntimeArgumentHandle türlerinin TypedReferenceveya bu tür dizilerinin oluşturulması desteklenmez.

-veya-

öğesini içeren type derleme, ile Saveoluşturulmuş dinamik bir derlemedir.

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

Çağıranın bu oluşturucuyu çağırma izni yoktur.

Not: Windows Mağazası uygulamaları için .NET'te veya Taşınabilir Sınıf Kitaplığı'nda bunun yerine temel sınıf özel durumunu MemberAccessExceptionyakalayın.

Soyut bir sınıfın örneği oluşturulamıyor veya bu üye geç bağlama mekanizmasıyla çağrıldı.

COM türü veya GetTypeFromCLSIDaracılığıyla GetTypeFromProgID alınamadı.

Eşleşen genel oluşturucu bulunamadı.

Not: Windows Mağazası uygulamaları için .NET'te veya Taşınabilir Sınıf Kitaplığı'nda bunun yerine temel sınıf özel durumunu MissingMemberExceptionyakalayın.

type bir COM nesnesidir, ancak türü almak için kullanılan sınıf tanımlayıcısı geçersiz veya tanımlanan sınıf kaydedilmemiş.

type geçerli bir tür değil.

Örnekler

Aşağıdaki kod örneği, yönteminin nasıl çağrılduğunu CreateInstance(Type) gösterir. Birkaç farklı türün örnekleri oluşturulur ve bunların varsayılan değerleri görüntülenir.

using namespace System;

ref class DynamicInstanceList
{
private:
    static String^ instanceSpec = "System.EventArgs;System.Random;" +
        "System.Exception;System.Object;System.Version";

public:
    static void Main()
    {
        array<String^>^ instances = instanceSpec->Split(';');
        Array^ instlist = Array::CreateInstance(Object::typeid, instances->Length);
        Object^ item;

        for (int i = 0; i < instances->Length; i++)
        {
            // create the object from the specification string
            Console::WriteLine("Creating instance of: {0}", instances[i]);
            item = Activator::CreateInstance(Type::GetType(instances[i]));
            instlist->SetValue(item, i);
        }
        Console::WriteLine("\nObjects and their default values:\n");
        for each (Object^ o in instlist)
        {
            Console::WriteLine("Type:     {0}\nValue:    {1}\nHashCode: {2}\n",
                o->GetType()->FullName, o->ToString(), o->GetHashCode());
        }
    }
};

int main()
{
    DynamicInstanceList::Main();
}

// This program will display output similar to the following:
//
// Creating instance of: System.EventArgs
// Creating instance of: System.Random
// Creating instance of: System.Exception
// Creating instance of: System.Object
// Creating instance of: System.Version
//
// Objects and their default values:
//
// Type:     System.EventArgs
// Value:    System.EventArgs
// HashCode: 46104728
//
// Type:     System.Random
// Value:    System.Random
// HashCode: 12289376
//
// Type:     System.Exception
// Value:    System.Exception: Exception of type 'System.Exception' was thrown.
// HashCode: 55530882
//
// Type:     System.Object
// Value:    System.Object
// HashCode: 30015890
//
// Type:     System.Version
// Value:    0.0
// HashCode: 1048575
using System;

class DynamicInstanceList
{
    private static string instanceSpec = "System.EventArgs;System.Random;" +
        "System.Exception;System.Object;System.Version";

    public static void Main()
    {
        string[] instances = instanceSpec.Split(';');
        Array instlist = Array.CreateInstance(typeof(object), instances.Length);
        object item;
        for (int i = 0; i < instances.Length; i++)
        {
            // create the object from the specification string
            Console.WriteLine("Creating instance of: {0}", instances[i]);
            item = Activator.CreateInstance(Type.GetType(instances[i]));
            instlist.SetValue(item, i);
        }
        Console.WriteLine("\nObjects and their default values:\n");
        foreach (object o in instlist)
        {
            Console.WriteLine("Type:     {0}\nValue:    {1}\nHashCode: {2}\n",
                o.GetType().FullName, o.ToString(), o.GetHashCode());
        }
    }
}

// This program will display output similar to the following:
//
// Creating instance of: System.EventArgs
// Creating instance of: System.Random
// Creating instance of: System.Exception
// Creating instance of: System.Object
// Creating instance of: System.Version
//
// Objects and their default values:
//
// Type:     System.EventArgs
// Value:    System.EventArgs
// HashCode: 46104728
//
// Type:     System.Random
// Value:    System.Random
// HashCode: 12289376
//
// Type:     System.Exception
// Value:    System.Exception: Exception of type 'System.Exception' was thrown.
// HashCode: 55530882
//
// Type:     System.Object
// Value:    System.Object
// HashCode: 30015890
//
// Type:     System.Version
// Value:    0.0
// HashCode: 1048575
open System

let instanceSpec =
    "System.EventArgs;System.Random;System.Exception;System.Object;System.Version"

let instances = instanceSpec.Split ';'
let instlist = Array.zeroCreate instances.Length
let mutable item = obj ()

for i = 0 to instances.Length - 1 do
    // create the object from the specification string
    printfn $"Creating instance of: {instances.[i]}"
    item <- Activator.CreateInstance(Type.GetType instances.[i])
    instlist.[i] <- item

printfn "\nObjects and their default values:\n"

for o in instlist do
    printfn $"Type:     {o.GetType().FullName}\nValue:    {o}\nHashCode: {o.GetHashCode()}\n"


// This program will display output similar to the following:
//
// Creating instance of: System.EventArgs
// Creating instance of: System.Random
// Creating instance of: System.Exception
// Creating instance of: System.Object
// Creating instance of: System.Version
//
// Objects and their default values:
//
// Type:     System.EventArgs
// Value:    System.EventArgs
// HashCode: 46104728
//
// Type:     System.Random
// Value:    System.Random
// HashCode: 12289376
//
// Type:     System.Exception
// Value:    System.Exception: Exception of type 'System.Exception' was thrown.
// HashCode: 55530882
//
// Type:     System.Object
// Value:    System.Object
// HashCode: 30015890
//
// Type:     System.Version
// Value:    0.0
// HashCode: 1048575
Class DynamicInstanceList
    Private Shared instanceSpec As String = "System.EventArgs;System.Random;" + _
        "System.Exception;System.Object;System.Version"

    Public Shared Sub Main()
        Dim instances() As String = instanceSpec.Split(";")
        Dim instlist As Array = Array.CreateInstance(GetType(Object), instances.Length)
        Dim item As Object

        For i As Integer = 0 To instances.Length -1
            ' create the object from the specification string
            Console.WriteLine("Creating instance of: {0}", instances(i))
            item = Activator.CreateInstance(Type.GetType(instances(i)))
            instlist.SetValue(item, i)
        Next i
        Console.WriteLine(Environment.NewLine + "Objects and their default values:" + Environment.NewLine)
        For Each o As Object In instlist
            Console.WriteLine("Type:     {0}" + Environment.NewLine + "Value:    {1}" + _
                Environment.NewLine + "HashCode: {2}" + Environment.NewLine, _
                o.GetType().FullName, o.ToString(), o.GetHashCode())
        Next o
    End Sub
End Class

' This program will display output similar to the following:
'
' Creating instance of: System.EventArgs
' Creating instance of: System.Random
' Creating instance of: System.Exception
' Creating instance of: System.Object
' Creating instance of: System.Version
'
' Objects and their default values:
'
' Type:     System.EventArgs
' Value:    System.EventArgs
' HashCode: 46104728
'
' Type:     System.Random
' Value:    System.Random
' HashCode: 12289376
'
' Type:     System.Exception
' Value:    System.Exception: Exception of type 'System.Exception' was thrown.
' HashCode: 55530882
'
' Type:     System.Object
' Value:    System.Object
' HashCode: 30015890
'
' Type:     System.Version
' Value:    0.0
' HashCode: 1048575

Açıklamalar

Çağrılacak oluşturucu erişilebilir olmalıdır.

Not

.NET Framework 2.0'dan başlayarak, çağıranın bayrağıyla verilmiş ReflectionPermission olması ve abonelik dışı türleri içeren derlemenin verme kümesinin çağıranın izin kümesiyle veya bunun bir alt kümesiyle ReflectionPermissionFlag.RestrictedMemberAccess sınırlı olması durumunda, bu yöntem abonelik dışı türlere erişmek için kullanılabilir. (Bkz. Yansıma için GüvenlikLe İlgili Dikkat Edilmesi Gerekenler.) Bu işlevi kullanmak için uygulamanızın .NET Framework 3.5 veya sonraki bir sürümü hedeflemesi gerekir.

Şunlara uygulanır

CreateInstance(ActivationContext)

Belirtilen ActivationContext nesne tarafından belirlenen türün bir örneğini oluşturur.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstance(ActivationContext ^ activationContext);
public static System.Runtime.Remoting.ObjectHandle CreateInstance (ActivationContext activationContext);
static member CreateInstance : ActivationContext -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstance (activationContext As ActivationContext) As ObjectHandle

Parametreler

activationContext
ActivationContext

Oluşturulacak nesneyi belirten bir etkinleştirme bağlam nesnesi.

Döndürülenler

Yeni oluşturulan nesneye veya null örneklere erişmek için Nullable<T> sarmalanmamış olması gereken bir tanıtıcı.

Açıklamalar

ObjectHandle.Unwrap Dönüş değerini açmak için yöntemini kullanın.

Etkinleştirme bağlamı, etki alanı ilkesini ayarlamak ve uygulama tabanlı bir güvenlik modeli sağlamak için bildirim tabanlı etkinleştirme sırasında kullanılır. sınıfı, ActivationContext uygulama bildirimine erişim sağlayan bir ApplicationIdentity nesnesi içerir. Daha fazla bilgi için sınıfına ApplicationSecurityManager bakın.

Ayrıca bkz.

Şunlara uygulanır

CreateInstance(AppDomain, String, String)

Adlandırılmış derlemeyi ve parametresiz oluşturucuyu kullanarak belirtilen uzak etki alanında adı belirtilen türün bir örneğini oluşturur.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstance(AppDomain ^ domain, System::String ^ assemblyName, System::String ^ typeName);
public static System.Runtime.Remoting.ObjectHandle CreateInstance (AppDomain domain, string assemblyName, string typeName);
[System.Security.SecurityCritical]
public static System.Runtime.Remoting.ObjectHandle CreateInstance (AppDomain domain, string assemblyName, string typeName);
static member CreateInstance : AppDomain * string * string -> System.Runtime.Remoting.ObjectHandle
[<System.Security.SecurityCritical>]
static member CreateInstance : AppDomain * string * string -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstance (domain As AppDomain, assemblyName As String, typeName As String) As ObjectHandle

Parametreler

domain
AppDomain

Adlı typeName türün oluşturulduğu uzak etki alanı.

assemblyName
String

adlı türün arandığı derlemenin adı typeName . ise assemblyNamenull, yürütülen derlemede arama yapılır.

typeName
String

Örneği oluşturulacak türün tam adı.

Döndürülenler

Yeni oluşturulan nesneye veya null örneklere erişmek için Nullable<T> eşlenmemiş olması gereken bir tanıtıcı.

Öznitelikler

Özel durumlar

typeName veya domain şeklindedir null.

Eşleşen genel oluşturucu bulunamadı.

typename içinde assemblyNamebulunamadı.

assemblyName bulunamadı.

Çağıranın bu oluşturucuyu çağırma izni yoktur.

Soyut türün örneği oluşturulamaz.

-veya-

Bu üye bir geç bağlanma mekanizması ile çağrıldı.

Yansıma aracılığıyla çağrılan oluşturucu bir özel durum oluşturdu.

COM türü veya GetTypeFromCLSIDaracılığıyla GetTypeFromProgID alınamadı.

, ArgIterator, , Voidve RuntimeArgumentHandle türlerinin TypedReferenceveya bu türlerin dizilerinin oluşturulması desteklenmez.

assemblyName geçerli bir derleme değil.

-veya-

Ortak dil çalışma zamanı (CLR) sürüm 2.0 veya üzeri şu anda yüklüdür ve assemblyName şu anda yüklü olan sürümden sonraki bir CLR sürümü için derlendi. .NET Framework 2.0, 3.0 ve 3.5 sürümlerinin tümünün CLR sürüm 2.0 kullandığını unutmayın.

Bir derleme veya modül iki farklı kanıtla iki kez yüklendi.

-veya-

Derleme adı veya kod tabanı geçersiz.

Açıklamalar

Konağın kısıtlı güvenlik izinlerine sahip bir uygulama etki alanında kod yürütmesi gerektiğinde kullanın CreateInstance .

Dönüş değerini açmak için kullanın ObjectHandle.Unwrap .

Şunlara uygulanır

CreateInstance<T>()

Source:
Activator.RuntimeType.cs
Source:
Activator.RuntimeType.cs
Source:
Activator.RuntimeType.cs

Parametresiz oluşturucuyu kullanarak belirtilen genel tür parametresi tarafından belirlenen türün bir örneğini oluşturur.

public:
generic <typename T>
 static T CreateInstance();
public static T CreateInstance<T> ();
static member CreateInstance : unit -> 'T
Public Shared Function CreateInstance(Of T) () As T

Tür Parametreleri

T

Oluşturulacak tür.

Döndürülenler

T

Yeni oluşturulan nesneye veya null örneklere Nullable<T> yönelik bir başvuru.

Özel durumlar

Soyut sınıfın örneği oluşturulamıyor veya için T belirtilen türün parametresiz bir oluşturucu yok.

Not: Windows Mağazası uygulamaları için .NET'te veya Taşınabilir Sınıf Kitaplığı'nda bunun yerine temel sınıf özel durumunu MissingMemberExceptionyakalayın.

Açıklamalar

Genel CreateInstance<T>() yöntem, tür parametreleri tarafından belirtilen türlerin örneklemesini uygulamak için derleyiciler tarafından kullanılır. Örneğin, aşağıdaki genel yöntemde (gcnew T() C++'da) uygulaması new T() genel yöntemi kullanırCreateInstance<T>().

public:
    generic <typename T> where T:gcnew()
    static T Bar()
    {
        return gcnew T();
    }
public static T Factory<T>() where T : new()
{
    return new T();
}
let factory<'T when 'T : (new: unit -> 'T)> =
    new 'T()
Public Shared Function Factory(Of T As New)() As T
    Return New T()
End Function

Genel olarak, türün CreateInstance<T>() derleme zamanında bilinmesi gerektiğinden, uygulama kodunda genel yöntemin kullanımı yoktur. Tür derleme zamanında biliniyorsa, normal örnekleme söz dizimi kullanılabilir (new C# dilinde işleç, New Visual Basic'te, gcnew C++'da). Derleme zamanında tür bilinmiyorsa, genel olmayan bir aşırı yüklemesini CreateInstanceçağırabilirsiniz.

Bağımsız değişken listelerini alan genel yöntemin CreateInstance<T>() aşırı yüklemeleri yoktur, çünkü genel olmayan aşırı yüklemeleri CreateInstance zaten geç bağlanan oluşturucu çözümlemesi sağlar.

Şunlara uygulanır