I'm trying to debug a slightly-modified version of the ADO.NET POCO Entity Generator template using the directions Oleg Sych published a few years back. I modified the DbgJITDebugLaunchSetting key as recommended.
I get a dialog indicating that a user-defined breakpoint has been hit. However, rather than being presented with the option to debug with a new instance of VS 2010, the original instance of VS 2010 just crashes and auto-restarts.
Is it possible to debug T4 templates with VS 2010?
Instead of using System.Diagnostics.Debugger.Launch(); or Break(), attach the debugger manually.
in Visual Studio 2010 you need to call Debugger.Launch() before Debugger.Break().
To add to andrecarlucci's solution, if you save the file, you will be prompted to reload it in the second instance of Visual Studio before you can debug it. If you don't need to make further changes but need to debug it multiple times, you don't have to save every time in order to break into the code. You can simply click the Transform All Templates button on the Solution Explorer toolbar in the original instance of Visual Studio.
Final solution which works for me:
regedit:
Key (x86 systems):
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework
Key (x64 systems):
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework
value:
DbgJITDebugLaunchSetting
data:
0x2
tt template:
You also need debug=true:
<@#template debug="true" #> System.Diagnostics.Debugger.Launch(); Debugger.Break();
http://msdn.microsoft.com/en-us/library/bb126338.aspx