示例:使用 Upsert 插入或更新记录

发布日期: 2017年1月

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

此示例代码演示如何通过使用 Upsert 消息插入或更新记录。 有关此示例演示的功能的详细信息,请参阅 使用 Upsert 插入或更新记录

这提供从使用 Upsert 插入或更新记录下载。

必备项

  1. 有权访问 Microsoft Dynamics 365 或 CRM Online 2016 更新 组织。

  2. 下载 UpsertSample Visual Studio 项目。

  3. 打开 UpsertSample Visual Studio 项目并安装 Microsoft.CrmSdk.CoreAssemblies 版本 8.0.0-preview 或更高版本的 NuGet 包。 有关说明,请参阅 安装 NuGet 包。

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

本主题内容

此示例的用途

安装 NuGet 包

运行示例

此示例的用途

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

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

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

  3. 第一次调用 ProcessUpsert 方法,其处理 newsampleproduct.xml 文件中的数据以表示新产品。UpsertRequest 被传递到 Execute 方法以创建 13 条新记录。

    UpsertResponse.RecordCreated 属性返回 True 指示已创建新记录。

    ProcessUpsert 方法结束前,程序将询问是否查看示例产品实体记录。 如果您的响应为“y”,程序将尝试在视图中打开 Internet Explorer,显示新建的记录。

  4. 第二次调用 ProcessUpsert 方法,其处理 updatedsampleproduct.xml 文件中的数据以表示对之前创建产品的更新。Upsert 消息用于更新 6 条记录。UpsertResponseRecordCreated 属性返回 False 显示已更新记录。

    同样,ProcessUpsert 方法将询问您是否要查看浏览器中的记录。 如果您已开启视图,只需刷新视图观察更改。

  5. 最后,DeleteUpsertSampleSolution 将提示您删除 Upsert 示例托管解决方案。

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

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

安装 NuGet 包

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

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

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

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

  4. 对于预览版,请确保在搜索条件中单击“包括预发行”而不是“仅稳定”。 然后搜索“Microsoft Dynamics CRM 2016 SDK core assemblies”。 请确保选中 8.0.0-preview 或更高版本。

  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 Office 365 中配置了该组织 (y/n) [n]

    如果这是 Microsoft Office 365 配置的组织,请键入 y。 否则,键入 n

    输入域名\用户名

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

    输入密码

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

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

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

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

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

另请参阅

使用 Upsert 插入或更新记录

Microsoft Dynamics 365

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