【问题标题】:Unable to debug .Net Code. Could not attach to process. SQL CLR Remote Debugging无法调试 .Net 代码。无法附加到进程。 SQL CLR 远程调试
【发布时间】:2012-12-20 05:47:34
【问题描述】:

我正在尝试在 Visual Studio 2012 RTM 中调试基于 CLR 的 StoredProcedure。我有一个 Sql 数据库项目。当我尝试使用 RightClick 调试我的脚本文件 -> 使用调试器执行时,它会弹出一个关于附加进程有害的警告,当我接受它时,只需说:

无法调试 .Net 代码。无法附加到 SQL Server 进程 '开发服务器'。

我做过很多不同的事情:

  • 我已将我的域用户添加到 sysadmin SQL Server 角色。

  • 我已经在远程服务器上运行了 MSVSMON.EXE 并设置了它的权限。

  • 我已在“属性”窗格中配置了 Visual Studio 项目的 ConnectionString。

  • 我已将当前域用户添加到远程服务器的本地管理员。

  • 在 Visual Studio 的 Sql Server 对象资源管理器中,我选择了当前连接并勾选了“允许 SQL\CLR 调试”

  • ...

但还是说不能附加进程,也没有可以调试的源代码。

你有什么想法吗?我忘记了什么?

提前致谢

【问题讨论】:

    标签: debugging stored-procedures remote-debugging sqlclr


    【解决方案1】:

    您好,在互联网上搜索了很长时间后,您的问题给了我我们问题的答案。 请仔细理解以下内容,

    1. 以管理员提升的权限启动 Visual Studio 2012
    2. 创建 SQL Server 项目
    3. 在项目设置/调试窗格中,为数据库连接提供连接字符串
    4. 从查看菜单,打开 SQL Server 对象资源管理器,如果您在 Project 中提供的连接字符串没有创建服务器实例,则在此处重新创建连接...
    5. 右键单击实例并选择允许 SQL CLR 调试,它会显示一些警告,接受所有内容,但请仔细阅读警告。
    6. 保存项目并执行重建,并通过生成的发布脚本测试项目的发布。
    7. 现在在项目中创建一个非部署脚本,放置一个断点按 ALT+F5 执行带有 Debug 选项的脚本,当 clr-procedure 发生并尝试进入其中时,它会要求进程附加到 windows , 请允许附加

    上面的步骤对我有用,这里是它的屏幕截图; "http://i.stack.imgur.com/GQwlt.png"

    欲了解更多信息,您也可以通过以下方式与我联系; 维诺德 W.B.@vinodwb@live.com

    【讨论】:

    • 如果使用数据库别名,上述技术将不起作用。 VS 抱怨找不到机器,但别名列在 SQL Server 对象资源管理器中。
    猜你喜欢
    • 2018-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-16
    • 2020-04-17
    • 2017-05-09
    • 2018-07-14
    • 2019-01-19
    相关资源
    最近更新 更多