前言
在本次示例中,我将在客户实体的表单上添加 “随机创建联系人” 按钮,
点击按钮后将调用使用 C# 创建的 Action,为客户随机创建一条联系人记录
步骤
步骤 1 新建项目
新建项目 –> 选择 类库(.NET Framework) –> 点击 确认

截图-新建项目-01
输入 一个有意义的项目名称 –> 选择 项目存储路径 –> 选择 框架 –> 点击 创建

截图-新建项目-02
步骤 2 NuGet 安装
右击你的项目 –> 选择 管理 NuGet 程序包 –> 搜索 Microsoft.CrmSdk.CoreAssemblies –> 点击 安装

截图-NuGet安装-01
步骤 3
将 Class1.cs 文件重命名为 ExampleRandomlyCreateContactAction(或任何你想要的名称)并添加下面的代码,其中我们使用 IPlugin
和 Execute
方法中的代码来随机创建新的联系人:
using Microsoft.Xrm.Sdk;
using System;
namespace Blog.D365.Example.CreateCustomAction
{
public class ExampleRandomlyCreateContactAction : IPlugin
{
public void Execute(IServiceProvider serviceProvider)
{
IPluginExecutionContext context = (IPluginExecutionContext)serviceProvider.GetService(typeof(IPluginExecutionContext));
IOrganizationServiceFactory factory = (IOrganizationServiceFactory)serviceProvider.GetService(typeof(IOrganizationServiceFactory));
IOrganizationService service = factory.CreateOrganizationService(context.UserId);
IOrganizationService serviceAdmin = factory.CreateOrganizationService(null);
try
{
Entity create_Contact = new Entity("contact");
create_Contact["parentcustomerid"] = new EntityReference();
create_Contact["lastname"] = GenerateRandomName();
create_Contact["mobilephone"] = GenerateRandomPhoneNumber();
service.Create(create_Contact);
}
catch (Exception e)
{
throw new InvalidPluginExecutionException(e.Message);
}
}
private string GenerateRandomPhoneNumber()
{
Random random = new Random();
string phoneNumber = "1";
for (int i = 1; i < 11; i++)
phoneNumber += random.Next(0, 10).ToString();
return phoneNumber;
}
private string GenerateRandomName()
{
string[] firstNames = { "张", "李", "王", "赵", "刘", "陈", "杨", "黄", "吴", "周" };
string[] lastNames = { "伟", "芳", "娜", "敏", "静", "磊", "强", "军", "洋", "莉" };
Random random = new Random();
string firstName = firstNames[random.Next(firstNames.Length)];
string lastName = lastNames[random.Next(lastNames.Length)];
return $"{firstName}{lastName}";
}
}
}
步骤 4 项目添加 “签名”
右击你的项目 –> 选择 属性 –> 切换到 签名 –> 勾选 为程序签名 –> 点击 下拉

截图-项目添加签名-01
选择 新建

截图-项目添加签名-02
输入 一个有意义的名称 –> 取消 使用密码保护密钥文件 –> 点击 确定

截图-项目添加签名-03
步骤 5 创建 Action
进入 Power Apps –> 打开 解决方案 –> 点击 New –> 点击 Automation –> 点击 Process –> 点击 Action

截图-创建 Action -01
输入 一个有意义的 Action 名称 –> 选择 Tab –> 选择 Account –> 点击 创建

截图-创建 Action -02
创建后 –> 点击 激活

截图-创建 Action -02
感谢您的耐心阅读!来选个表情,或者留个评论吧!