代码之家  ›  专栏  ›  技术社区  ›  Eric J.

在VS2010 IDE中调试T4模板

  •  16
  • Eric J.  · 技术社区  · 16 年前

    ADO.NET POCO实体生成器 模板使用说明 Oleg Sych published DbgJITDebugLaunchSetting设置 按推荐键。

    我得到一个对话框,指示用户定义的断点已经命中。但是,vs2010的原始实例并没有提供使用vs2010的新实例进行调试的选项,而是崩溃并自动重新启动。

    是否可以用VS2010调试T4模板?

    5 回复  |  直到 14 年前
        1
  •  15
  •   Oleg Sych    16 年前

    在VisualStudio2010中,需要在Debugger.Break()之前调用Debugger.Launch()。

        2
  •  7
  •   andrecarlucci    15 年前

    而不是使用System.Diagnostics.Debugger.Launch();或Break(),手动附加调试器。

    1. 打开要创建的T4模板 调试(只需.tt文件即可)
    2. 转到调试->附加到进程并找到原始devenv.exe
    3. 添加常规断点 (红球)去你想去的地方 启动调试(在第二个 vs2010(静止)
    4. vs2010,保存.tt文件并。。。 答对 了!vs2010的二审 将调试您的模板。
        3
  •  3
  •   Net User HH    15 年前

    对我有效的最终解决方案:

    密钥(x86系统): HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework

    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework

    价值: DbgJITDebugLaunchSetting

    0x2

    tt模板:

    <#@ template debug="true" hostSpecific="true"  #>
    <# System.Diagnostics.Debugger.Launch(); System.Diagnostics.Debugger.Break(); #>
    
        4
  •  2
  •   Tim Fischer    16 年前

    您还需要debug=true:

    <@#template debug=“true”#> System.Diagnostics.Debugger.Launch(); Debugger.Break();

    http://msdn.microsoft.com/en-us/library/bb126338.aspx

        5
  •  1
  •   Ryan    15 年前

    要添加到andrecarlucci的解决方案中,如果保存该文件,则会提示您在调试该文件之前在VisualStudio的第二个实例中重新加载该文件。如果您不需要做进一步的更改,但是需要多次调试它,那么您不必每次都保存以进入代码。您只需在VisualStudio的原始实例中单击“解决方案资源管理器”工具栏上的“转换所有模板”按钮。

    推荐文章