Dynamics CRM 2011 自定义实体:创建与我的 SQL Server 外键和主键关系相匹配的模型

作者:编程家 分类: sqlserver 时间:2025-08-01

在 Dynamics CRM 2011 中,我们可以通过自定义实体来创建与我们的 SQL Server 数据库中的外键和主键关系相匹配的模型。这样一来,我们可以更好地管理和组织我们的数据,并确保数据的完整性和一致性。

创建自定义实体

首先,让我们来创建一个自定义实体。在 Dynamics CRM 2011 中,我们可以通过以下步骤来完成这个任务:

1. 打开 Dynamics CRM 2011 的 Web 客户端,并登录到您的组织。

2. 导航到“设置”选项卡,并选择“自定义实体”。

3. 单击“新建”按钮,然后填写自定义实体的相关信息,如名称、显示名称和描述等。

4. 单击“保存”按钮,然后系统将自动生成与自定义实体相关的数据库表。

创建外键关系

有时候,我们可能需要在自定义实体中创建外键关系,以便将其与其他实体进行关联。在 Dynamics CRM 2011 中,我们可以通过以下步骤来创建外键关系:

1. 打开自定义实体的表单,在“字段”选项卡中选择一个字段,并在“属性”窗格中找到“数据类型”属性。

2. 将数据类型属性设置为“查找”。

3. 在“查找实体”属性中选择要与该字段关联的实体。

4. 保存并发布自定义实体的更改。

通过这样的设置,我们就成功地在自定义实体中创建了一个外键关系。

创建主键关系

在 Dynamics CRM 2011 中,每个实体都有一个默认的主键字段。然而,有时候我们可能需要创建自定义的主键字段来满足特定需求。下面是创建自定义主键字段的步骤:

1. 打开自定义实体的表单,在“字段”选项卡中选择一个字段,并在“属性”窗格中找到“数据类型”属性。

2. 将数据类型属性设置为“唯一标识符”。

3. 保存并发布自定义实体的更改。

通过这样的设置,我们就成功地在自定义实体中创建了一个主键关系。

案例代码

下面是一个简单的案例代码,演示了如何在 Dynamics CRM 2011 中创建一个自定义实体,并为该实体创建外键和主键关系:

csharp

// 创建自定义实体

var customEntity = new Entity("new_customentity");

customEntity["new_name"] = "自定义实体";

customEntity["new_description"] = "这是一个自定义实体";

var customEntityId = service.Create(customEntity);

// 创建外键关系

var lookupField = new LookupAttributeMetadata()

{

SchemaName = "new_relatedentity",

DisplayName = new Label("关联实体", 1033),

RequiredLevel = new AttributeRequiredLevelManagedProperty(AttributeRequiredLevel.ApplicationRequired),

Targets = new[] { "account", "contact" } // 关联的实体

};

service.Execute(new CreateAttributeRequest

{

EntityName = "new_customentity",

Attribute = lookupField

});

// 创建主键关系

var primaryKeyField = new UniqueIdentifierAttributeMetadata()

{

SchemaName = "new_customid",

DisplayName = new Label("自定义主键", 1033),

RequiredLevel = new AttributeRequiredLevelManagedProperty(AttributeRequiredLevel.ApplicationRequired),

};

service.Execute(new CreateAttributeRequest

{

EntityName = "new_customentity",

Attribute = primaryKeyField

});

以上是在 Dynamics CRM 2011 中创建与 SQL Server 外键和主键关系相匹配的模型的方法。通过自定义实体、创建外键和主键关系,我们可以更好地管理和组织我们的数据。这种灵活性使得 Dynamics CRM 2011 成为一个强大的数据管理工具。