You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在.NET 6/7中使用Dynamics 365?求适配升级的正确方案与包

.NET 6/7对接Dynamics 365的正确方案
  • 核心包确认:你找到的Microsoft.PowerPlatform.Dataverse.Client正是官方推荐的适配.NET 6/7的包,它替代了.NET Framework时代的Microsoft.Xrm.Sdk等旧组件,专门为.NET Core/.NET 5+环境设计,用于对接Dynamics 365的底层数据平台Dataverse。

  • 迁移关键步骤:

    1. 替换依赖包:移除原.NET Framework项目中的Microsoft.Xrm.Sdk、Microsoft.Crm.Sdk.Proxy等旧包,通过NuGet安装Microsoft.PowerPlatform.Dataverse.Client。
    2. 调整连接逻辑:旧代码里的CrmServiceClient可直接替换为新包中的ServiceClient,连接字符串格式基本兼容,同时支持OAuth、Client Secret等现代认证方式。
      示例代码:
      string connectionString = "AuthType=OAuth;Url=https://yourorg.crm.dynamics.com;ClientId=你的应用ID;ClientSecret=你的密钥;RedirectUri=app://58145B91-0C36-4500-8554-080854F2AC97";
      using var serviceClient = new ServiceClient(connectionString);
      if (serviceClient.IsReady)
      {
          // 执行数据操作,比如查询账户
          var query = new QueryExpression("account") { TopCount = 10 };
          var results = await serviceClient.RetrieveMultipleAsync(query);
      }
      
    3. 切换异步编程:新包提供了完整的异步API(如RetrieveMultipleAsync、CreateAsync),建议替换同步方法,适配.NET 6/7的异步编程模型以提升性能。
    4. 更新认证方式:优先使用Client Secret或证书认证替代传统的用户名密码认证,符合云环境安全规范。
  • 注意事项:

    • 若原项目包含Dynamics 365插件、自定义工作流活动,这类代码目前仍需基于.NET Framework编写(因为插件宿主环境暂不支持.NET 6/7);但客户端应用(控制台、Web API、桌面应用)可完全迁移到.NET 6/7使用新包。
    • 若需调用Dataverse Web API,也可直接用HttpClient实现,但Microsoft.PowerPlatform.Dataverse.Client封装了更多底层细节,开发效率更高。

内容的提问来源于stack exchange,提问作者Shahin Jabbarov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 05:15:01