Aracılığıyla paylaş


Type.GetNestedType Yöntem

Tanım

Geçerli Typeiçinde iç içe yerleştirilmiş belirli bir türü alır.

Aşırı Yüklemeler

Name Description
GetNestedType(String, BindingFlags)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen bağlama kısıtlamalarını kullanarak belirtilen iç içe türü arar.

GetNestedType(String)

Belirtilen ada sahip genel iç içe türü arar.

GetNestedType(String, BindingFlags)

Kaynak:
Type.cs
Kaynak:
Type.cs
Kaynak:
Type.cs
Kaynak:
Type.cs
Kaynak:
Type.cs

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen bağlama kısıtlamalarını kullanarak belirtilen iç içe türü arar.

public:
 abstract Type ^ GetNestedType(System::String ^ name, System::Reflection::BindingFlags bindingAttr);
[System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembers(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicNestedTypes | System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicNestedTypes)]
public abstract Type? GetNestedType(string name, System.Reflection.BindingFlags bindingAttr);
public abstract Type GetNestedType(string name, System.Reflection.BindingFlags bindingAttr);
public abstract Type? GetNestedType(string name, System.Reflection.BindingFlags bindingAttr);
[<System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembers(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicNestedTypes | System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicNestedTypes)>]
abstract member GetNestedType : string * System.Reflection.BindingFlags -> Type
abstract member GetNestedType : string * System.Reflection.BindingFlags -> Type
Public MustOverride Function GetNestedType (name As String, bindingAttr As BindingFlags) As Type

Parametreler

name
String

Alınacak iç içe türün adını içeren dize.

bindingAttr
BindingFlags

Aramanın nasıl yapıldığını belirten numaralandırma değerlerinin bit düzeyinde birleşimi.

-veya-

Default öğesini döndürecek null.

Döndürülenler

Bulunursa, belirtilen gereksinimlerle eşleşen iç içe türü temsil eden bir nesne; aksi takdirde , null.

Uygulamalar

Öznitelikler

Özel durumlar

name, null'e eşittir.

Açıklamalar

için nameiç içe sınıfın basit adını kullanın. Dış sınıfın adıyla nitelemeyin. Genel iç içe geçmiş bir sınıf için, mangled adını kullanın; yani, bir vurgu ekleyin ve genel parametrelerin sayısını ekleyin. Örneğin, genel iç içe sınıf Inner<T> (Visual Basic'de Inner(Of T)) almak için "Inner'1" dizesini kullanın. Tür parametreleri için dile özgü söz dizimi eklemeyin.

Aşağıdaki BindingFlags filtre bayrakları, aramaya hangi iç içe türlerin dahil edilebileceğini tanımlamak için kullanılabilir:

Bu yöntem yalnızca geçerli türün iç içe türlerini döndürür. Geçerli türün temel sınıflarını aramaz. Temel sınıflarda iç içe yerleştirilmiş türleri bulmak için, her düzeyde çağırarak GetNestedType devralma hiyerarşisinde yürümeniz gerekir.

BindingFlags.Instance ve BindingFlags.Static yoksayılır.

Bu yöntemi yalnızca BindingFlags.Public bayrakla veya yalnızca BindingFlags.NonPublic bayrakla çağırmak, belirtilen iç içe türleri döndürür ve başka bayrak gerektirmez.

Daha fazla bilgi için bkz. System.Reflection.BindingFlags.

Geçerli Type , genel bir tür veya genel yöntemin tanımında tür parametresini temsil ederse, bu yöntem sınıf kısıtlamasının iç içe geçmiş türlerini arar.

İç içe bir tür genelse, bu yöntem genel tür tanımını döndürür. Kapsayan genel tür kapalı bir yapılı tür olsa bile bu doğrudur.

Uyarı

Geçerli Type C#, Visual Basic veya C++ ile tanımlanan genel bir türü temsil ederse, iç içe türleri kendi genel parametreleri olmasa bile geneldir. Bu durum dinamik derlemelerde tanımlanan veya Ilasm.exe (IL Assembler) ile derlenen iç içe türler için geçerli olmayabilir.

İç içe genel türler ve kendi genel tür tanımlarından iç içe genel türler oluşturma hakkında bilgi için bkz MakeGenericType. .

Ayrıca bkz.

Şunlara uygulanır

GetNestedType(String)

Kaynak:
Type.cs
Kaynak:
Type.cs
Kaynak:
Type.cs
Kaynak:
Type.cs
Kaynak:
Type.cs

Belirtilen ada sahip genel iç içe türü arar.

public:
 Type ^ GetNestedType(System::String ^ name);
public:
 virtual Type ^ GetNestedType(System::String ^ name);
[System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembers(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicNestedTypes)]
public Type? GetNestedType(string name);
public Type GetNestedType(string name);
public Type? GetNestedType(string name);
[<System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembers(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicNestedTypes)>]
member this.GetNestedType : string -> Type
member this.GetNestedType : string -> Type
abstract member GetNestedType : string -> Type
override this.GetNestedType : string -> Type
Public Function GetNestedType (name As String) As Type

Parametreler

name
String

Alınacak iç içe türün adını içeren dize.

Döndürülenler

Bulunursa, belirtilen ada sahip genel iç içe türü temsil eden bir nesne; aksi takdirde , null.

Uygulamalar

Öznitelikler

Özel durumlar

name, null'e eşittir.

Açıklamalar

name araması büyük/küçük harfe duyarlıdır.

için nameiç içe sınıfın basit adını kullanın. Dış sınıfın adıyla nitelemeyin. Genel iç içe geçmiş bir sınıf için, mangled adını kullanın; yani, bir vurgu ekleyin ve genel bağımsız değişkenlerin sayısını ekleyin. Örneğin, genel iç içe sınıf Inner<T> (Visual Basic'de Inner(Of T)) almak için "Inner'1" dizesini kullanın. Tür parametreleri için dile özgü söz dizimi eklemeyin.

Aşağıdaki tabloda, bir türe yansıtılırken yöntemler tarafından döndürülen temel sınıf üyeleri gösterilmektedir.

Üye Türü Static Statik Olmayan
Yapıcı Hayır Hayır
Veri Alanı Hayır Evet. Alan her zaman isim ve imzaya göre gizli olur.
Etkinlik Uygulanamaz Yaygın tür sistemi kuralı, özniteliği uygulayan yöntemlerdeki devralma ile aynıdır. Yansıma, özellikleri ada ve imzaya göre gizle olarak ele alır. Aşağıdaki 2. nota bakın.
Yöntem Hayır Evet. Bir yöntem (hem sanal hem de sanal olmayan) isim odaklı gizleme veya isim ve imza odaklı gizleme olabilir.
İç İçe Yerleştirilmiş Tür Hayır Hayır
Mülkiyet Uygulanamaz Yaygın tür sistemi kuralı, özniteliği uygulayan yöntemlerdeki devralma ile aynıdır. Yansıma, özellikleri ada ve imzaya göre gizle olarak ele alır. Aşağıdaki 2. nota bakın.
  1. Ad ve imzaya göre gizleme, özel değiştiriciler, dönüş türleri, parametre türleri, sentineller ve yönetilmeyen çağırma kuralları dahil olmak üzere, imzanın tüm parçalarını dikkate alır. Bu ikili karşılaştırmadır.

  2. Yansıma için, özellikler ve olaylar ada ve imzaya göre gizlenir. Temel sınıfta hem get hem de set erişimcisine sahip bir özelliğiniz varsa, ancak türetilen sınıfın yalnızca bir get erişimcisi varsa, türetilmiş sınıf özelliği temel sınıf özelliğini gizler ve temel sınıfta ayarlayıcıya erişemezsiniz.

  3. Özel öznitelikler ortak tür sisteminin bir parçası değildir.

Geçerli Type , genel bir tür veya genel yöntemin tanımında tür parametresini temsil ederse, bu yöntem sınıf kısıtlamasının iç içe geçmiş türlerini arar.

İç içe bir tür genelse, bu yöntem genel tür tanımını döndürür. Kapsayan genel tür kapalı bir yapılı tür olsa bile bu doğrudur.

Uyarı

Geçerli Type C#, Visual Basic veya C++ ile tanımlanan genel bir türü temsil ederse, iç içe türleri kendi genel parametreleri olmasa bile geneldir. Bu durum dinamik derlemelerde tanımlanan veya Ilasm.exe (IL Assembler) ile derlenen iç içe türler için geçerli olmayabilir.

İç içe genel türler ve kendi genel tür tanımlarından iç içe genel türler oluşturma hakkında bilgi için bkz MakeGenericType. .

Ayrıca bkz.

Şunlara uygulanır