我需要使用XrmQuery用“null”更新id绑定字段。
这是我的代码:
XrmQuery.update(x => x.contacts,
recordId,
{
address2_line1: null,
address2_postalcode: null,
address2_city: null,
cgk_origindate: null,
cgk_countrypostaladdressid_bind$cgk_countries: null,
cgk_originaddress: null
}).execute(id => {
});
此更新不适用于cgk_countrypostaladdressid_bind$cgk_countries: null
。
当我删除此行时,更新正常。是否有一种典型的方法可以使用XrmQuery使id绑定字段为“null”?
答案 0 :(得分:4)
通过向Web API发送更新请求,您无法将查找字段设置为null。相反,您需要发送disassociate request。很遗憾,我们目前尚未支持XrmQuery中的关联/取消关联请求。
在我们直接在XrmQuery(issue 31)中构建对此的支持之前,您可以按如下方式手动制作请求:
正如您在MSDN页面上看到的那样,您需要以特定格式发送HTTP DELETE
。对于查找(称为单值导航属性),您可以将其值设置为null,如下所示:
XrmQuery.sendRequest("DELETE",
"contacts(" + recordId + ")/cgk_countrypostaladdressid/$ref",
null,
() => { alert("success"); },
() => { alert("error"); }
);