2017-11-15 1 views
2

Ich habe ein No-Name-Objekt in einem "mit Block" erstellt.Wie kann ich ein Objekt sehen, das in einem "mit Block" erstellt wurde?

Meine Frage ist: Wie kann ich das Objekt untersuchen, wenn der Debugger im Unterbrechungsmodus ist?

+2

Interessante Frage und eine, die für mich vermutlich nie gekommen ist, wie Ich habe nie darüber nachgedacht. Dies scheint nicht möglich zu sein. Wenn dies der Fall ist, besteht die Problemumgehung darin, das Ergebnis des Ausdrucks einer lokalen Variablen zuzuweisen und diese Variable dann in der Anweisung 'With' zu verwenden. – jmcilhinney

+2

Wenn Sie etwas sehen möchten, erstellen Sie es nicht anonym. Ich mag die 'With'-Aussage sowieso nicht. Ich habe es nie verstanden. Die Nachteile überwiegen deutlich die Vorteile (falls vorhanden). –

+0

Ich denke, das ist kein Problem des Codes, sondern des Debuggers :) – Georg

Antwort

2

Wenn ich einen Haltepunkt auf einer Zeile innerhalb eines Blockes With gesetzt, kehrte das Objekt aus der Funktion in dem Lokalfenster auftaucht. Dies verwendet VS2015. Wenn ich mit der rechten Maustaste auf den Funktionsnamen in der Zeile With klicke und "Watch hinzufügen" wähle, wird das Objekt im Watch-Fenster angezeigt.

Mein Code:

Module Module1 
    Sub Main() 

     With FunctionThatCreatesAnA() 
      Console.WriteLine("{0}, {1}", .SomeString, .SomeInteger) 
     End With 

     Console.ReadLine() 
    End Sub 

    Function FunctionThatCreatesAnA() As ClassA 
     Return New ClassA With {.SomeString = "Blah Blah", .SomeInteger = 42} 
    End Function 
End Module 

Public Class ClassA 
    Public Property SomeString() As String 
    Public Property SomeInteger() As Integer 
End Class 

Lokalfenster:

enter image description here

Watch-Fenster:

enter image description here

+0

Danke @Chris, es funktioniert super mit dem Locals-Fenster. Aber vorsichtig mit der zweiten Methode: Wenn Sie mit der rechten Maustaste auf den Funktionsnamen klicken, sehen Sie ein anderes Objekt als das im "mit Block" erstellte Objekt. – Georg

Verwandte Themen