2017-02-18 3 views
1

can't seem local variable in local scopeVisual Studio 2015 Update3 können lokale Variablen manchmal nicht sehen

cann't watch local variable's value

private byte[] sizeBytes; 
public async Task<string> ReceiveStream() 
{ 
    byte[] responseBytes; 
    string response=null; 
    try 
    { 
     await m_dataReader.LoadAsync(4); 
     sizeBytes=new byte[4]; 
     m_dataReader.ReadBytes(sizeBytes); 
     int len = int.Parse(Encoding.ASCII.GetString(sizeBytes)) ; 

     // 读内容 
     responseBytes = new byte[len]; 
     m_dataReader.UnicodeEncoding=UnicodeEncoding.Utf8; 
     await m_dataReader.LoadAsync((uint)len); 
     response= m_dataReader.ReadString(m_dataReader.UnconsumedBufferLength); 
     Debug.Log(response.Length); 
     Debug.Log(response); 

    } 
    catch (Exception e) 
    { 
     throw e; 
    } 
    return response; //返回response 

} 

den obigen Code, nur Membervariable in der Uhrenansicht zu sehen ist. Dies ist ein UWP-Projekt-Export von Unity3D.

+0

Auf dem ersten Bild haben Sie es bedeuten sollte, statt 'System.Text.UTF8Encoding' Detail Zeichenfolge angezeigt werden? Auf dem zweiten Bild meinst du die "Antwort" und "Antwort" sollte den Wert zeigen? Worauf kommt das 'Debug.log'? In der UWP-App ist diese Methode standardmäßig nicht verfügbar. –

+0

@ SunteenWu-MSFT Ja, ich kann lokale Variable im lokalen und Watch-Fenster nicht sehen. Debug.Log ist die API von Unity3D. Das Projekt wird von Unity3D nach Visual Studio exportiert. – zwx

Antwort

1

Ich fand die Antwort, aber ich denke nicht, dass es einen Weg gibt, es zu lösen. Dieses Projekt wird von Unity3d exportiert. Wenn ich das Schlüsselwort 'async' vor dem Methodennamen hinzufüge, ist das lokale Fenster im Debugging-Modus unordentlich. enter image description here

enter image description here

Verwandte Themen