【问题标题】:How can I avoid automatically attaching to T-SQL for debugging in Visual Studio 2008?如何避免自动附加到 T-SQL 以在 Visual Studio 2008 中进行调试?
【发布时间】:2008-11-03 15:22:31
【问题描述】:

在调试我正在开发的网站时,我倾向于使用 Attach to Process 而不是 F5 来开始调试(因为该站点已经在 Firefox 中运行)。但是,偶尔这样做时,我会收到以下错误:

对对象“sp_sdidebug”、数据库“master”、所有者“dbo”的执行权限被拒绝。

我知道这是由于附加了 T-SQL 调试器,而不仅仅是托管代码(有关该问题的进一步说明,请参阅 this blog post)。

我希望可以设置某个位置以避免一开始附加到 T-SQL,而不是每次附加时都必须记住重置该设置。

所以,真正的问题是:有谁知道我可以如何更改 Visual Studio 2008 的默认行为,以便通过调试菜单附加到进程时,它不会自动 附加到 T-SQL,但只附加到托管代码?也就是说,如何将 Studio 设置为记住不附加到托管代码以外的任何内容?

仅供参考,如果有项目特定的设置,我使用的是 C# Web 应用程序项目。

【问题讨论】:

    标签: .net visual-studio visual-studio-2008 debugging settings


    【解决方案1】:

    您可以通过单击附加对话框中“附加到:”行上的“选择...”按钮来更改用于附加到进程的调试引擎。

    选择“调试这些代码类型”选项而不是自动选项,并确保清除 T-SQL 选项。

    我不知道如何将其设置为默认值,希望 Visual Studio 能记住它。

    【讨论】:

    • 是的,这就是我目前正在做的事情。不幸的是,它在重新启动后不记得了。
    • 新的操作系统,新的 Visual Studio,现在它正在记住...谢谢!
    【解决方案2】:

    在项目的属性下(在解决方案资源管理器中选择项目:右键单击并选择属性;或按 Alt-F7;或按 Alt-Enter;或从菜单中选择项目/xxxx 属性),切换到 [Debug] 选项卡,并取消选中“Enable SQl Debugging”

    【讨论】:

    • 在 C# Web Application 项目中,我认为这是 Web 选项卡上的 Debuggers 部分。但是,只检查 ASP.NET,而不检查 SQL Server。
    【解决方案3】:

    如果你在 VS 的服务器资源管理器中右键单击数据库连接,你应该会看到 2 个调试选项,确保它们没有被勾选。

    同样在项目设置中,您可以更改是否启用 SQL 调试。

    【讨论】:

    • 我没有连接到服务器资源管理器中的数据库,如果我这样做了,我看不到您提到的选项(不在右键菜单中,不在属性窗口中)。另外,请参阅我对@James Curran 关于项目设置的回复。
    猜你喜欢
    • 2013-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-07
    相关资源
    最近更新 更多