Локали, отсутствующие во время отладки в Visual Studio 2015
Проблема
Локалицы отображают только переменную this
во время отладки, другие локальные переменные недоступны в локалях или часах, но могут быть переоценены в промежуточном окне в Visual Studio
![Окно отладки Visual Studio с отсутствующими локалями]()
Краткое описание
Я отлаживаю тест Xunit для кода, который я пишу. Библиотека, которую я тестирую, нацелена на ASP.NET Core RC1. Вот мой project.json
:
{
"authors": [ "Matthew Abbott" ],
"commands": {
"test": "xunit.runner.dnx"
},
"description": "Provides tests for the Fx.Content.Composer package",
"dependencies": {
"xunit": "2.1.0-rc1-build3168",
"xunit.runner.dnx": "2.1.0-rc1-build204",
"Fx.Content.Composer": ""
},
"frameworks": {
"dnx451": { },
"dnxcore50": {
"dependencies": {
"System.Runtime": "4.0.21-beta-23516"
}
}
},
"licenseUrl": "",
"projectUrl": "",
"tags": [ "" ],
"version": "1.0.0-*"
}
При отладке unit test (я использую Visual Studio в встроенных тестовых функциях) я могу установить точки останова, но окна Locals/Watch не позволяют мне проверять объявления локальных переменных. Я также не получаю всплывающие подсказки переменных для этих локальных переменных.
Если я скопирую и вставляю свои заявления в Intermediate, они затем добавляются в область видимости, но я не могу легко отлаживать сразу с места в карьер.
Вещи, которые я пробовал
- Обеспечение компиляции в режиме отладки
- Отключение оптимизации JIT
- Reset настройки моей Visual Studio
Примечания
- Недавно я установил обновление Visual Studio 2015 2
- Я перезапустил IDE несколько раз без успеха
- Я перезагрузил серверное время машины без успеха
- Явно не привязан к сеансу отладки unit test - когда я запускаю F5, они также не работают
Любая помощь будет принята с благодарностью!
Обновление
Основываясь на комментарии Виктора, я попытался перейти в метод из этого unit test, и изначально параметр доступен в области видимости, но переменная, определенная ниже, не является.
![Частичные отсутствующие локальные жители?]()
Ответы
Ответ 1
Обновление:. Примечание. Этот ответ применим только к обновлению Visual Studio 2015. 2. Если вам не хватает локальных компьютеров в любой другой версии Visual Studio, происходит что-то еще. Пакет исправлений исправления можно установить только через обновление Visual Studio 2015 Update 2. Обновление Visual Studio 2015 Update 3 и более поздних версий уже имеет исправление.
Исходный ответ:
Это похоже на ошибку, появившуюся в Visual Studio 2015 Update 2. По сути, отладчик не может проверять локальные переменные в динамических модулях. Сегодня мы выпустили исправление. Вы можете скачать патч здесь. Документация для патча здесь. Дайте мне знать, не исправляет ли ваш патч конкретный сценарий.
Спасибо!
-Патрик Нельсон