Type.ReflectionOnlyGetType(String, Boolean, Boolean) Yöntem

Tanım

, Type Büyük/küçük harfe duyarlı bir arama yapılıp yapılmayacağını ve tür bulunamazsa bir özel durum oluşturulup oluşturulmayacağını belirterek, belirtilen ada sahip öğesini alır.Gets the Type with the specified name, specifying whether to perform a case-sensitive search and whether to throw an exception if the type is not found. Tür yalnızca yansıma için yüklenir, yürütme için değildir.The type is loaded for reflection only, not for execution.

public:
 static Type ^ ReflectionOnlyGetType(System::String ^ typeName, bool throwIfNotFound, bool ignoreCase);
public static Type? ReflectionOnlyGetType (string typeName, bool throwIfNotFound, bool ignoreCase);
public static Type ReflectionOnlyGetType (string typeName, bool throwIfNotFound, bool ignoreCase);
static member ReflectionOnlyGetType : string * bool * bool -> Type
Public Shared Function ReflectionOnlyGetType (typeName As String, throwIfNotFound As Boolean, ignoreCase As Boolean) As Type

Parametreler

typeName
String

Alınacak öğesinin derleme nitelikli adı Type .The assembly-qualified name of the Type to get.

throwIfNotFound
Boolean

true tür bulunamazsa bir oluşturmak için; tür bulunamazsa TypeLoadException dönmek için false null .true to throw a TypeLoadException if the type cannot be found; false to return null if the type cannot be found. falseAyrıca belirtme bazı özel durum koşullarını da bastırır, ancak tümünü göstermez.Specifying false also suppresses some other exception conditions, but not all of them. Özel Durumlar bölümüne bakın.See the Exceptions section.

ignoreCase
Boolean

true için büyük/küçük harfe duyarsız arama gerçekleştirmek için typeName ; için false büyük/küçük harfe duyarlı arama gerçekleştirin typeName .true to perform a case-insensitive search for typeName; false to perform a case-sensitive search for typeName.

Döndürülenler

Type

Bulunursa, belirtilen ada sahip tür; Aksi takdirde, null .The type with the specified name, if found; otherwise, null. Tür bulunamazsa throwIfNotFound parametre null döndürülüp döndürülmeyeceğini veya bir özel durumun oluşturulup oluşturulmayacağını belirtir.If the type is not found, the throwIfNotFound parameter specifies whether null is returned or an exception is thrown. Bazı durumlarda, değerinden bağımsız olarak bir özel durum oluşturulur throwIfNotFound .In some cases, an exception is thrown regardless of the value of throwIfNotFound. Özel Durumlar bölümüne bakın.See the Exceptions section.

Özel durumlar

typeName, null değeridir.typeName is null.

Sınıf başlatıcısı çağrılır ve bir özel durum oluşturulur.A class initializer is invoked and throws an exception.

throwIfNotFoundtrueve tür bulunamadı.throwIfNotFound is true and the type is not found.

-veya--or- throwIfNotFoundtrueve typeName katıştırılmış sekme gibi geçersiz karakterler içeriyor.throwIfNotFound is true and typeName contains invalid characters, such as an embedded tab. -veya--or- throwIfNotFoundtrueve typeName boş bir dizedir.throwIfNotFound is true and typeName is an empty string.

-veya--or- throwIfNotFoundtrueve typeName boyutu geçersiz olan bir dizi türünü temsil eder.throwIfNotFound is true and typeName represents an array type with an invalid size.

-veya--or- typeName bir nesne dizisini temsil eder TypedReference .typeName represents an array of TypedReference objects.

typeName derleme adını içermez.typeName does not include the assembly name.

-veya--or- throwIfNotFoundtrueve typeName geçersiz sözdizimi içeriyor; Örneğin, "MyType [, *,]".throwIfNotFound is true and typeName contains invalid syntax; for example, "MyType[,*,]".

-veya--or- typeName işaretçi türü, ByRef türü veya Void tür bağımsız değişkenlerinden biri olan genel bir türü temsil eder.typeName represents a generic type that has a pointer type, a ByRef type, or Void as one of its type arguments.

-veya--or- typeName yanlış sayıda tür bağımsız değişkenine sahip genel bir türü temsil eder.typeName represents a generic type that has an incorrect number of type arguments.

-veya--or- typeName genel bir türü temsil eder ve tür bağımsız değişkenlerinden biri karşılık gelen tür parametresi kısıtlamalarını karşılamıyor.typeName represents a generic type, and one of its type arguments does not satisfy the constraints for the corresponding type parameter.

throwIfNotFoundtrueve derleme ya da bağımlılıklarından biri bulunamadı.throwIfNotFound is true and the assembly or one of its dependencies was not found.

Derleme ya da bağımlılıklarından biri bulundu, ancak yüklenemedi.The assembly or one of its dependencies was found, but could not be loaded.

Derleme ya da bağımlılıklarından biri geçerli değil.The assembly or one of its dependencies is not valid.

-veya--or-

Derleme, ortak dil çalışma zamanının şu anda yüklü olan sürümünden daha yeni bir sürümle derlendi.The assembly was compiled with a later version of the common language runtime than the version that is currently loaded.

Yalnızca .NET 5 + ve .NET Core: Bu üye desteklenmez..NET 5+ and .NET Core only: This member is not supported.

Açıklamalar

Türü içeren derleme salt yansıma bağlamına zaten yüklenmediyse, ReflectionOnlyGetType yöntemi kullanılarak yalnızca yansıma için derlemeyi yükleme, ReflectionOnlyLoad yöntemini kullanma ve ardından derlemenin yöntemi çağırarak tür yükleme ' ye denktir Assembly.GetType .If the assembly containing the type is not already loaded into the reflection-only context, using the ReflectionOnlyGetType method is equivalent to first loading the assembly for reflection only, using the ReflectionOnlyLoad method, and then loading the type by calling the assembly's Assembly.GetType method. Derleme nitelikli adlar hakkında daha fazla bilgi için bkz Type.AssemblyQualifiedName . özelliği.For information about assembly-qualified names, see the Type.AssemblyQualifiedName property. Tür adlarını belirtme hakkında daha fazla bilgi için bkz GetType(String, Boolean, Boolean) . yöntem aşırı yüklemesi.For additional details on specifying type names, see the GetType(String, Boolean, Boolean) method overload.

Derleme zaten yürütme için yüklenmişse, başka bir kopya yalnızca yansıma bağlamına yüklenir.If the assembly is already loaded for execution, another copy is loaded into the reflection-only context.

throwIfNotFoundParametresi, tür bulunamadığında ne olacağını belirtir ve ayrıca özel durumlar bölümünde açıklandığı gibi belirli diğer özel durum koşullarını da engeller.The throwIfNotFound parameter specifies what happens when the type is not found, and also suppresses certain other exception conditions, as described in the Exceptions section. Bazı özel durumlar, değerinden bağımsız olarak oluşturulur throwIfNotFound .Some exceptions are thrown regardless of the value of throwIfNotFound. Örneğin, derleme geçerli değilse, BadImageFormatException olsa bile bir oluşturulur throwIfNotFound false .For example, if the assembly is not valid, a BadImageFormatException is thrown even if throwIfNotFound is false.

Yalnızca yansıma bağlamını kullanma hakkında daha fazla bilgi için bkz. nasıl yapılır: bütünleştirilmiş kodları Reflection-Only bağlamına yükleme.For more information about using the reflection-only context, see How to: Load Assemblies into the Reflection-Only Context.

Şunlara uygulanır

Ayrıca bkz.