2017-02-18 28 views
1

can't seem local variable in local scopeVisual Studio 2015 Update3 не могут смотреть локальные переменные иногда

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 

} 

код выше, только переменная-член может рассматриваться с точки зрения часов. Это экспорт проекта UWP из Unity3D.

+0

На первом изображении вы имели в виду он должен отображать детали строку вместо 'System.Text.UTF8Encoding'? На втором изображении вы имели в виду, что 'response' и' respones' должны показывать значение? Что такое 'Debug.log'? Приложение UWP не имеет этого метода по умолчанию. –

+0

@ SunteenWu-MSFT да, я не вижу локальную переменную в Local and Watch Window. Debug.Log - это API Unity3D. Проект экспортируется из Unity3D в Visual Studio. – zwx

ответ

1

Я нашел ответ, но я не думаю, что есть способ его решить. Этот проект экспортируется из Unity3d. Когда я добавляю ключевое слово async перед именем метода, локальное окно в режиме отладки беспорядочно. enter image description here

enter image description here