DebuggerTypeProxyAttribute Oluşturucular
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Ara sunucu türünü kullanarak sınıfının yeni bir örneğini DebuggerTypeProxyAttribute başlatır.
Aşırı Yüklemeler
| Name | Description |
|---|---|
| DebuggerTypeProxyAttribute(String) |
Ara sunucusunun tür adını kullanarak sınıfın yeni bir örneğini DebuggerTypeProxyAttribute başlatır. |
| DebuggerTypeProxyAttribute(Type) |
Ara sunucu türünü kullanarak sınıfının yeni bir örneğini DebuggerTypeProxyAttribute başlatır. |
DebuggerTypeProxyAttribute(String)
Ara sunucusunun tür adını kullanarak sınıfın yeni bir örneğini DebuggerTypeProxyAttribute başlatır.
public:
DebuggerTypeProxyAttribute(System::String ^ typeName);
public DebuggerTypeProxyAttribute(string typeName);
new System.Diagnostics.DebuggerTypeProxyAttribute : string -> System.Diagnostics.DebuggerTypeProxyAttribute
Public Sub New (typeName As String)
Parametreler
- typeName
- String
Ara sunucu türünün tür adı.
Açıklamalar
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 kesinlikle gerekli olandan daha fazla iş yapmamalısınız.
Şunlara uygulanır
DebuggerTypeProxyAttribute(Type)
Ara sunucu türünü kullanarak sınıfının yeni bir örneğini DebuggerTypeProxyAttribute başlatır.
public:
DebuggerTypeProxyAttribute(Type ^ type);
public DebuggerTypeProxyAttribute(Type type);
new System.Diagnostics.DebuggerTypeProxyAttribute : Type -> System.Diagnostics.DebuggerTypeProxyAttribute
Public Sub New (type As Type)
Parametreler
- type
- Type
Ara sunucu türü.
Özel durumlar
type, null'e eşittir.
Örnekler
Aşağıdaki kod örneği, bir hata ayıklayıcısı görüntü ara sunucusu belirtmek için oluşturucunun DebuggerTypeProxyAttribute(Type) kullanımını gösterir. Bu kod örneği, sınıfı için DebuggerDisplayAttribute sağlanan daha büyük bir örneğin parçasıdır.
[DebuggerTypeProxy(typeof(HashtableDebugView))]
class MyHashtable : Hashtable
{
private const string TestString = "This should not appear in the debug window.";
internal class HashtableDebugView
{
private Hashtable hashtable;
public const string TestString = "This should appear in the debug window.";
public HashtableDebugView(Hashtable hashtable)
{
this.hashtable = hashtable;
}
[DebuggerBrowsable(DebuggerBrowsableState.RootHidden)]
public KeyValuePairs[] Keys
{
get
{
KeyValuePairs[] keys = new KeyValuePairs[hashtable.Count];
int i = 0;
foreach(object key in hashtable.Keys)
{
keys[i] = new KeyValuePairs(hashtable, key, hashtable[key]);
i++;
}
return keys;
}
}
}
}
<DebuggerDisplay("Count = {Count}"), DebuggerTypeProxy(GetType(MyHashtable.HashtableDebugView))> _
Class MyHashtable
Inherits Hashtable
Private Const TestString As String = "This should not appear in the debug window."
Friend Class HashtableDebugView
Private hashtable As Hashtable
Public Shared TestString As String = "This should appear in the debug window."
Public Sub New(ByVal hashtable As Hashtable)
Me.hashtable = hashtable
End Sub
<DebuggerBrowsable(DebuggerBrowsableState.RootHidden)> _
ReadOnly Property Keys as KeyValuePairs()
Get
Dim nkeys(hashtable.Count) as KeyValuePairs
Dim i as Integer = 0
For Each key As Object In hashtable.Keys
nkeys(i) = New KeyValuePairs(hashtable, key, hashtable(key))
i = i + 1
Next
Return nkeys
End Get
End Property
End Class
End Class
Açıklamalar
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 kesinlikle gerekli olandan daha fazla iş yapmamalısınız.