Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
DebuggerTypeProxyAttribute bir tür için bir ara sunucu veya stand-in belirtir ve türün hata ayıklayıcı pencerelerinde görüntülenme şeklini değiştirir. Proxy’ye sahip bir değişkeni görüntülediğinizde, proxy görüntüde özgün türün yerini alır. Hata ayıklayıcısı değişken penceresi yalnızca ara sunucu türünün genel üyelerini görüntüler. Özel üyeler görüntülenmez.
Bu öznitelik şu özelliklere uygulanabilir:
- Structures
- Sınıflar
- Assemblies
Uyarı
Yerel kod için bu öznitelik yalnızca C++/CLI kodunda desteklenir.
Bir proxy sınıfının, proxy'nin yerini alacağı türü bir bağımsız değişken olarak alan bir oluşturucuya sahip olması gerekir. Hata ayıklayıcı, hedef türdeki bir değişkeni görüntülemek gerektiğinde tür vekil sınıfının yeni bir örneğini oluşturur. Bunun performans üzerindeki etkileri olabilir. Sonuç olarak, oluşturucuda gereksiz işlerden kaçının.
Performans cezalarını en aza indirmek için, kullanıcı hata ayıklayıcı penceresindeki + simgesine tıklayarak veya DebuggerBrowsableAttribute kullanarak türü genişletmediği sürece, ifade değerlendiricisi türün görüntüleme proxy'si üzerindeki öznitelikleri incelemez. Bu nedenle, öznitelikleri görüntü türünün kendisine yerleştirmeyin. Öznitelikler görüntü türünün gövdesinde kullanılabilir ve kullanılmalıdır.
Tür proxy'sinin özniteliğinin hedeflendiği sınıfın içinde özel bir iç içe sınıf olması iyi bir fikirdir. Bu, iç üyelere kolayca erişmesini sağlar.
DebuggerTypeProxyAttribute devralınabilir, bu nedenle bir tür ara sunucusu temel sınıfta belirtilirse türetilmiş sınıflar kendi tür ara sunucusunu belirtmediği sürece türetilmiş sınıflara uygulanır.
Toplama düzeyinde kullanılırsa, DebuggerTypeProxyAttribute parametresi, Target değiştirecek proxy'nin türünü belirtir.
ve DebuggerDisplayAttributeile DebuggerTypeProxyAttribute birlikte bu özniteliğin nasıl kullanılacağına ilişkin bir örnek için bkz. DebuggerDisplay Özniteliğini Kullanma.
Önemli
Değişkenlerin pencerelerinde nesnelerin ham yapısını göster seçeneğini belirlerseniz, DebuggerDisplay özniteliği yoksayılır. Bu ayar, Tüm Ayarlar>Hata Ayıklama> bölümündeki Araçlar>Seçenekleri bölmesinde bulunur.
Önemli
Değişkenlerin pencerelerinde nesnelerin ham yapısını göster seçeneğini belirlerseniz, DebuggerDisplay özniteliği yoksayılır. Bu ayar, Hata Ayıklama>Genel bölümündeki Araçlar>Seçenekleri iletişim kutusunda bulunur.
DebuggerTypeProxy ile Genel Türleri Kullanma
Genel kullanıma yönelik destek sınırlıdır. C# için yalnızca DebuggerTypeProxy açık türleri destekler. Yapılandırılmamış tür olarak da adlandırılan açık tür, tür parametreleri için bağımsız değişkenlerle örneklenmeyen genel bir türdür. Yapılı türler olarak da adlandırılan kapalı türler desteklenmez.
Açık bir türün söz dizimi şöyle görünür:
Namespace.TypeName<,>
DebuggerTypeProxy için tür parametrelerini sizin yerinize çıkarır.
C# dilinde açık ve kapalı türler hakkında daha fazla bilgi için bkz. C# Dil Belirtimi, bölüm 20.5.2 Açık ve kapalı türler.
Visual Basic'te açık tür söz dizimi olmadığından, aynı şeyi Visual Basic'te yapamazsınız. Bunun yerine, açık tür adının dize gösterimini kullanmanız gerekir.
"Namespace.TypeName'2"