Ответ 1
в Visual Studio 2010 вам нужно вызвать Debugger.Launch() перед Debugger.Break().
Я пытаюсь отладить слегка модифицированную версию шаблона Generator Generator ADO.NET POCO с помощью указаний Олег Сыч опубликовал несколько лет назад. Я изменил ключ DbgJITDebugLaunchSetting, как рекомендовано.
Я получаю диалог, указывающий, что пользовательская точка останова была удалена. Однако вместо того, чтобы быть представленным с возможностью отладки с новым экземпляром VS 2010, исходный экземпляр VS 2010 просто сбой и автозапуск.
Можно ли отлаживать шаблоны T4 с помощью VS 2010?
в Visual Studio 2010 вам нужно вызвать Debugger.Launch() перед Debugger.Break().
Вместо использования System.Diagnostics.Debugger.Launch(); или Break(), присоедините отладчик вручную.
Окончательное решение, которое работает для меня:
смерзаться:
Ключ (системы x86): HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework
Ключ (системы x64): HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework
значение: DbgJITDebugLaunchSetting
данные: 0x2
tt шаблон:
<#@ template debug="true" hostSpecific="true" #>
<# System.Diagnostics.Debugger.Launch(); System.Diagnostics.Debugger.Break(); #>
Вам также потребуется debug = true:
< @# template debug = "true" # > System.Diagnostics.Debugger.Launch(); Debugger.Break();
Чтобы добавить к решению andrecarlucci, если вы сохраните файл, вам будет предложено перезагрузить его во втором экземпляре Visual Studio, прежде чем вы сможете его отладить. Если вам не нужно вносить дополнительные изменения, но вам нужно отлаживать его несколько раз, вам не нужно каждый раз сохранять его, чтобы вломиться в код. Вы можете просто нажать кнопку "Преобразовать все шаблоны" на панели инструментов Solution Explorer в исходном экземпляре Visual Studio.