示例:使用更改跟踪将数据与外部系统同步

 

发布日期: 2017年1月

适用于: Dynamics 365 (online),Dynamics 365 (on-premises),Dynamics CRM 2016,Dynamics CRM Online

此示例代码显示如何使用 RetrieveEntityChangesRequest 消息检索实体的更改,以及如何将数据与外部系统同步。 有关此示例演示的功能的详细信息,请参阅 使用更改跟踪将数据与外部系统同步

此示例需要 Microsoft Dynamics CRM Online 2015 更新 1、Microsoft Dynamics CRM Online 2016 更新或 Microsoft Dynamics 365(内部部署)。 此示例可以从使用更改跟踪将数据与外部系统同步下载。

必备项

  1. 可访问 Microsoft Dynamics CRM Online 2015 更新 1、Microsoft Dynamics CRM Online 2016 更新 或 Microsoft Dynamics 365(本地部署)组织。

  2. 下载 ChangeTrackingSample Visual Studio 项目。

  3. 打开 ChangeTrackingSample Visual Studio 项目并安装最新的 Microsoft.CrmSdk.CoreAssemblies NuGet 包。 有关说明,请参阅 安装 NuGet 包。

  4. 在安装 NuGet 包后,请参阅 运行示例 了解有关如何运行示例以及应抱有哪些期待的说明。

本主题内容

此示例的用途

安装 NuGet 包

运行示例

此示例的用途

  1. ChangeTrackingSampleRun 方法调用 ImportChangeTrackingSolution 方法,后者首先检测 ChangeTrackingSample 托管解决方案是否已安装。 如果未安装,ChangeTrackingSample_1_0_0_0_managed.zip 文件将被导入以安装此托管解决方案。

    此托管解决方案包含此示例使用的自定义 sample_book 实体。 此实体拥有 sample_bookcode 备用键,其创建存储在该属性中的值的唯一约束。

  2. WaitForEntityAndKeysToBeActive 方法是必需的,因为此示例所需的备用键可能不会在 ChangeTrackingSample 解决方案安装后立即准备就绪。 此方法将轮询 sample_book 实体的元数据以延迟其余示例的执行,直到备用键准备就绪。

  3. CreateRequiredRecords 方法在 sample_book 实体中生成 10 条记录。

  4. 第一次呼叫 RetrieveEntityChangesRequest;执行初始同步并且检索实体中的所有记录以及版本号,并缓存检索到的记录。

  5. 在缓存初始记录后,程序将询问是否查看 sample_book 实体记录。 如果您的响应为“y”,程序将尝试在视图中打开 Internet Explorer,显示新建的记录。

  6. UpdateRecords 方法添加 10 条新记录,更新现有记录并删除 sample_book 实体中的记录。

  7. 在更新记录后,程序重置分页信息并实例化缓存对象。

  8. RetrieveEntityChangesRequest 再次调用时,它仅检索自上次同步后更新的记录。

  9. 在检索更改后,程序将询问是否查看 sample_book 实体记录。 如果您的响应为“y”,程序将尝试在视图中打开 Internet Explorer,显示新建的记录。

  10. 最后,DeleteChangeTrackingSampleSolution 将提示您删除 ChangeTrackingSample 托管解决方案。

    如果选择“y”,托管解决方案将被删除,包括 sample_book 实体和所有该实体中的数据。 您的组织将保持原样不进行任何添加。

    如果选择“n”,您可以检查解决方案的详细信息,包括示例所创建的数据。 但是,您必须手动删除托管解决方案以将您的组织返回原始状态。

安装 NuGet 包

使用以下步骤安装此示例所需的程序集:

  1. 下载此示例并提取文件。

  2. 使用 Visual Studio 导航到文件夹 C#,然后打开 ChangeTrackingSample.sln 文件。

  3. 在 Visual Studio 中,右键单击 ChangeTrackingSample 项目并选择“管理 NuGet 包”。

  4. 对于预览版,请确保在搜索条件中选择“包括预发行”而不是“仅稳定”。 然后搜索“Microsoft Dynamics CRM 2016 SDK core assemblies”。 请确保选择最新版本。

  5. 单击“安装”。 您需要接受许可条款以完成该程序包的安装。

运行示例

  1. 在 Visual Studio 中(已打开解决方案并安装了必需的 NuGet 包),请按 F5。

  2. 如果之前尚未运行某个 Microsoft Dynamics 365 托管代码示例,您需要输入信息以运行代码,或者为在之前设置的一个 Dynamics 365 服务器输入该数字。

    提示

    说明

    输入 Dynamics 365 服务器的名称和端口 [crm.dynamics.com]

    键入 Microsoft Dynamics 365 服务器的名称。 默认为北美的 Microsoft Dynamics 365 (online) (crm.dynamics.com)。

    示例:
    myservername
    myprefix.myservername:5500
    crm5.dynamics.com

    不包括您的组织名称或 Internet 协议(http 或 https)。 之后系统会提示您。

    此服务器是否配置了安全套接字层 (https) (y/n) [n]

    如果用来访问 Microsoft Dynamics 365 的 URL 以 https:// 开头,则键入 y,否则键入 n

    是否在 Microsoft Online Services 中配置了该组织 (y/n) [n]

    如果是配置了 Microsoft Online Services 的组织,键入 y。 否则,键入 n

    输入域名\用户名

    键入您的 Microsoft 帐户。
    对于 Dynamics 365(本地),键入用反斜杠 (\) 分隔的网络域名和用户名。

    输入密码

    键入密码。 窗口中的字符将显示为“*”。 您的密码将保存在 Microsoft Credential Manager 中以便日后重复使用。

    指定组织编号 (1-n) [1]

    在您所属的所示组织列表中,键入相应数字。 默认值为 1,表示列表中的第一个组织。

  3. 示例将执行 此示例的用途 中介绍的操作,并且会向您提示其他选项。

  4. 在示例结束后,请按 ENTER 关闭控制台窗口。

另请参阅

使用更改跟踪将数据与外部系统同步

Microsoft Dynamics 365

© 2017 Microsoft。 保留所有权利。 版权