Dynamics 365: 从0到1了解如何创建Custom API(3) - Custom API的调试之插件调试

对于Custom API的调试,主要有三种方式:

  • 插件代码中添加log
  • 插件调试
  • 单元测试

对于这三种方式,说白了也就相当于两种,第一种打log,这种方式很多时候我们是在插件调试突然不好使的时候,或者在不调试时还想看下问题大概出在哪的时候才会用的。

我们平时在调试插件的时候最常用的还是第二种或者第三种,这个主要看个人习惯。并且第三种方式,单元测试,有的时候还会涉及到自动化CI/CD的时候,去自动运行一些单元测试。

今天我们主要说下第二种方式,插件调试

当我们将之前在解决方案中创建的Custom API与我们为这个Custom API创建的实现插件进行关联后,插件注册工具会自动创建一个Step,如下图。

但是这个step目前来看并不能直接用于调试,也就是说当我们右键点击这个step来打算开启start profiling的时候是会报错的,上网查了一下发现有国外的老兄也有遇到相同的问题的:Solved: How to debug Custom API (unbound action)? - Power Platform Community (microsoft.com)

之后查了一些资料发现微软在他文档中对这块有个说明,我们需要自己手动创建一个step来完成调试:Create and use custom APIs (Microsoft Dataverse) - Power Apps | Microsoft Learn

接下来我们就来看下如何进行调试:

1. 创建Step

Message找到我们自定义API的那个名称

Event Pipeline选择PostOperation,这个在微软的文档中有提到:

Create and use custom APIs (Microsoft Dataverse) - Power Apps | Microsoft Learn

2. 开启Start Profiling
3. 触发这个Custom API来生成profile

这里我们使用XrmToolBox中的Custom API Tester来触发

4. 触发后我们可以double check一下profile是否生成
5. 生成后我们需要在插件注册工具中停掉Profiling
6. 在VS中附加插件注册工具的进程,并在代码中打上断点
7. 在插件注册工具中启动调试

这个时候我们发现我们就已经可以进到代码中断点了

注意事项:
  • 对于自定义API中的允许的自定义处理步骤类型 ,如果这个选为"无",我们在后续创建step步骤的时候是会失败的,而如果没有步骤我们是不能使用插件注册工具这种方式来进行调试的。所以我们需要最后选成"同步和异步"
相关推荐
Cilsoft 秦汉信息科技8 天前
Microsoft Dynamics 365 Finance Operations 企业级财务与运营管理平台
microsoft·erp·dynamics 365·财务管理·企业管理软件·dynamics 365 fo·microsoftd365fo
明哥说编程2 个月前
Dynamics 365 插件中如何安全捕获并处理 SQL 异常而不破坏事务
事务管理·dynamics 365·插件开发·sql 异常
明哥说编程2 个月前
用 C# 扩展 Dynamics 365 Copilot:自定义插件与场景
sdk·dynamics 365·插件开发·copilot 扩展·dataverse 数据交互
明哥说编程3 个月前
Power Automate 与Dynamics 365 插件结合实现复杂业务逻辑
dynamics 365
明哥说编程3 个月前
从代码陷阱到敏捷配置:Dynamics 365 避免过度定制的架构设计原则
硬编码·dynamics 365·插件开发规范·过度定制·架构设计原则·原生功能优先·低代码扩展边界
明哥说编程4 个月前
Dynamics 365 报表开发: FetchXML 与 Power BI 数据可视化实战
dynamics 365
明哥说编程4 个月前
Dynamics 365 Web API 对接外部系统:数据双向同步方案
dynamics 365
明哥说编程4 个月前
Power Virtual Agents与Dynamics 365 集成搭建客服机器人完全指南
dynamics 365·power platform
Kookoos1 年前
Dynamics 365 Finance + Power Automate 自动化凭证审核
运维·自动化·dynamics 365·power automate
jmsail1 年前
Dynamics 365 Business Central AI Sales Order Agent Copilot
人工智能·microsoft·copilot·dynamics 365·d365 bc erp