如何获取已保存实体的ID

时间:2013-10-18 12:20:10

标签: dynamics-crm-2011 dynamics-crm

Dynamics CRM 2011内部部署

我几乎无法相信我无法通过谷歌搜索找到这个。 MSDN没用。

以下是插件中的一些C#:

integ_creditpayment creditpayment = new integ_creditpayment();
creditpayment.integ_Amount = totalPay;
//set more properties
context.AddObject(creditpayment);
context.SaveChanges();

现在我想在integ_creditpayment中获取id字段的值。

我可以立即从creditpayment.id获取此信息吗? (如上所述,context.SaveChanges()是否会使用新ID更新creditpayment变量?)

2 个答案:

答案 0 :(得分:1)

我假设您的实际代码更复杂,但不需要在示例代码中使用上下文:

integ_creditpayment creditpayment = new integ_creditpayment();
creditpayment.integ_Amount = totalPay;
//set more properties
creditpayment.Id = service.Create(creditpayment);

如果您愿意,也可以使用类型初始值设定项并将所有对象全部删除:

Guid id = service.Create(new integ_creditpayment
{
    integ_Amount = totalPay;
});
在这种情况下,

service的类型为IOrganizationService

答案 1 :(得分:0)

SaveChanges()后,你可以获得记录ID:

Guid justCreatedId = creditpayment.Id;