调试动态 CRM 插件

本文关键字:插件 CRM 动态 调试 | 更新日期: 2023-09-27 17:55:31

我在调试Dynamics CRM Online(2015)插件(C#)时遇到问题。我正在按照此 MSDN 文章中的说明附加到进程。在"附加到进程"窗口中,我选择"显示所有用户的进程"并刷新。但是,我没有看到列出的四个服务流程中的任何一个(我认为在我的情况下插件类型是"在线")。

  • w3wp.exe(在IE中打开CRM Online实例时)
  • Microsoft.Crm.Application.Hoster.exe
  • CrmAsyncService.exe
  • Microsoft.Crm.Sandbox.WorkerProcess.exe

我已经使用插件注册工具部署并注册了插件。我以前从未这样做过,所以我可能以错误的方式去做。有什么想法吗?

调试动态 CRM 插件

根据您引用的链接,如果您正在使用 Dynamics CRM Online,则无法附加到任何 CRM 进程,因为它们未在本地运行。

第一段说(强调我加的):

以下步骤描述了如何调试在 上执行的插件 Microsoft Dynamics CRM 2015 on 本地。调试插件 在Microsoft Dynamics CRM Online上的沙盒中执行,您必须 使用 [原文如此] 跟踪,如本主题后面所述

您将需要使用插件分析器来调试在CRM Online中执行的插件。

分析插件性能:

  1. 运行插件注册工具。您可以在 SDK 的"工具''插件注册"文件夹中找到该工具的可执行文件。 下载Microsoft Dynamics CRM SDK软件包。
  2. 单击或点击"创建新连接"以连接到Microsoft Dynamics CRM 服务器和组织。欲了解更多信息 连接到服务器和组织,请参阅 SDK 主题: 演练:使用插件注册注册插件 工具。
  3. 注册插件并在Microsoft动态 CRM 服务器上执行步骤。在计算机上保留调试编译的插件程序集的副本 运行该工具的位置。
  4. 在目标组织的工具栏中,选择"安装探查器"。现在,您将在列表中看到一个插件性能分析器节点。
  5. 选择一个插件步骤,然后单击工具栏中的"启动性能分析"以开始性能分析。您可以在 显示"性能分析器设置"对话框。
  6. 在Microsoft动态 CRM 中执行导致插件运行的操作。例如,如果为更新配置了该步骤 ,然后更新帐户。
  7. 如果在"探查器设置"对话框中选择了"异常"选项,则在插件引发异常和业务流程之后 显示错误对话框,单击下载日志文件并保存此文件。 或者,如果插件未引发异常,请单击"停止" 分析。
  8. 在插件注册工具中,单击调试。
  9. 在"调试现有插件"对话框中,在"设置"选项卡中提供请求的信息。 输入之前的位置 在配置文件字段中保存了日志文件。输入或选择位置 插件程序集和插件的类名 执行。
  10. 启动Microsoft Visual Studio并将调试器附加到插件注册.exe进程。
  11. 在插件代码中设置断点。
  12. 单击"调试现有插件"对话框中的"开始执行"。
  13. 稍有延迟后,插件将使用Microsoft Dynamics CRM传递给它的相同执行上下文执行 服务器和调试器将在断点上停止执行 先前设置。
  14. 像往常一样继续调试插件。插件输出的任何跟踪显示在调试现有插件中 對話方塊。

此时,您可以更改插件代码,构建它,重新附加 调试器到插件注册.exe进程,然后单击开始 执行以继续调试会话。表演时 这些操作,你不需要关闭调试现有的 插件表单。

您无需将插件重新部署到Microsoft动态 CRM 服务器,直到您修复代码问题之后。此调试 即使您有优化版本的插件,方案也有效 服务器上插件的服务器和调试版本,其中 您正在调试。