【发布时间】:2017-07-21 16:43:23
【问题描述】:
问题 我正在尝试让我的帐户使用新地址更新复合地址。客户地址中的所有字段都显示新值,但复合地址显示旧地址。
期望的结果: 更改地址字段时复合字段更新为新地址
实际结果: 复合字段显示旧地址
我尝试过的事情:
- 更新地址
- 删除地址并创建一个新地址(坏主意)
- 在创建帐户时将所有字段设置为默认值
- 直接设置复合字段
- 将版本号设置为默认0x00003F3F
- 将所有地址字段设置为空
当前代码:
Entity theAccount = proxy.Retrieve("account", Guid.Parse("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"), new Microsoft.Xrm.Sdk.Query.ColumnSet(true));
Guid address1_id = theAccount.Attributes.ContainsKey("address1_addressid") ? (Guid)theAccount.Attributes["address1_addressid"] : Guid.Empty;
Entity theAddress = new Entity()
{
LogicalName = "customeraddress",
Id = address1_id
};
theAddress.Attributes["line1"] = null;
theAddress.Attributes["line2"] = null;
theAddress.Attributes["line3"] = null;
theAddress.Attributes["city"] = null;
theAddress.Attributes["stateorprovince"] = null;
theAddress.Attributes["country"] = null;
theAddress.Attributes["county"] = null;
theAddress.Attributes["postofficebox"] = null;
theAddress.Attributes["postalcode"] = null;
theAddress.Attributes["composite"] = null;
proxy.Update(theAddress);
theAddress.Attributes["line1"] = "1 New Street";
theAddress.Attributes["line2"] = null;
theAddress.Attributes["line3"] = null;
theAddress.Attributes["city"] = "New City";
theAddress.Attributes["stateorprovince"] = "New State";
theAddress.Attributes["country"] = "New Country";
theAddress.Attributes["county"] = null;
theAddress.Attributes["postofficebox"] = null;
theAddress.Attributes["postalcode"] = "1234";
proxy.Update(theAddress);
问题 如何在更新地址字段时成功更改 Microsoft Dynamic CRM 中的地址复合字段
【问题讨论】:
-
第二次Update后检索记录时,复合字段仍为空?
标签: c# dynamics-crm