【问题标题】:MSCRM: How to create entities and set relations using the xRM linq providerMSCRM:如何使用 xRM linq 提供程序创建实体和设置关系
【发布时间】:2010-06-17 08:21:15
【问题描述】:
我是否需要先保存新创建的 CRM 实体实例,然后才能设置与其他 crm 实体实例的关系?
我遇到的问题是在调用CrmDataContext.SaveChanges()后,新创建的实体被写入数据库,但是数据库中缺少这些新创建的实例之间的关系。
我错过了什么?每次我创建一个新的 crm 实体实例并希望与其他 CRM 实体实例建立关系时,我是否必须调用 CrmDataContext.SaveChanges()?
【问题讨论】:
标签:
linq
entity
dynamics-crm
dynamics-crm-4
【解决方案1】:
您应该能够在保存此实体(即查找)之前以 1:N 关系设置与其他实体的关系。
如果您希望您的实体被另一个实体引用,则需要先保存它,或者您需要先为该实体设置一个 Guid。否则您的链接将无法粘贴。
当你新建一个实体时,除非你手动设置它,否则它的 id 直到它被保存到数据库中才被设置。如果您手动设置它,它将尊重您为其提供的新 Guid,并且该关系将在保存过程中继续存在。
如果您尝试单独保存一个实体,则需要确保在保存该实体之前已保存它引用的所有实体,否则它将没有链接。