RetrieveAttributeChangeHistoryRequest 检索对特定属性所做的全部更改
方法示例:
var attributeChangeHistoryRequest = new RetrieveAttributeChangeHistoryRequest
{
Target = new EntityReference(
entity.LogicalName, entity.Id),
AttributeLogicalName = "new_status_lc"
};
var attributeChangeHistoryResponse =
(RetrieveAttributeChangeHistoryResponse)plugin.SysService.Execute(attributeChangeHistoryRequest);
// Display the attribute change history.
AuditDetailCollection details = attributeChangeHistoryResponse.AuditDetailCollection;
if (details != null && details.Count > 1 && details[0] != null)
{
Type type = details[0].GetType();
Entity oldValueEntiy = type.GetProperty("OldValue").GetValue(details[0], null) as Entity;
Entity newValueEntity = type.GetProperty("NewValue").GetValue(details[0], null) as Entity;
auditValue.OldValue = oldValueEntiy.Contains(field) ? oldValueEntiy.GetAttributeValue<Money>(field).Value.ToString() : "";
auditValue.NewValue = newValueEntity.Contains(field) ? newValueEntity.GetAttributeValue<Money>(field).Value.ToString() : "";
}
人生短短数十载,最要紧的是满足自己,不是讨好他人。
——亦舒《美丽新世界》