public async Task <CrmActionParameterHandleResult> Convert(string name, object parameter) { CrmExecuteEntity realParameter = parameter as CrmExecuteEntity; JObject valueResult = new JObject(); if (realParameter.Id != Guid.Empty) { if (realParameter.IsActivity) { valueResult["activityid"] = JToken.FromObject(realParameter); } else { valueResult[$"{realParameter.EntityName}id"] = JToken.FromObject(realParameter); } } valueResult["@odata.type"] = JToken.FromObject($"Microsoft.Dynamics.CRM.{realParameter.EntityName}"); foreach (var attributeItem in realParameter.Attributes) { var attributeResult = await _crmActionParameterHandle.Convert(attributeItem.Key, attributeItem.Value); valueResult[attributeResult.Name] = attributeResult.Value; } CrmActionParameterHandleResult result = new CrmActionParameterHandleResult() { Name = name, Value = valueResult }; return(result); }
public async Task <CrmActionParameterHandleResult> Convert(string name, object parameter) { IList <CrmExecuteEntity> realParameter = parameter as IList <CrmExecuteEntity>; List <JToken> valueList = new List <JToken>(); foreach (var item in realParameter) { if (item == null) { valueList.Add(JToken.Parse("null")); continue; } var handleResult = await _crmActionParameterHandle.Convert(string.Empty, item); valueList.Add(handleResult.Value); } CrmActionParameterHandleResult result = new CrmActionParameterHandleResult(); result.Name = name; result.Value = JsonSerializerHelper.Deserialize <JToken>(JsonSerializerHelper.Serializer(valueList)); return(result); }
public async Task <JToken> Convert(object parameter) { var handleResult = await _crmActionParameterHandle.Convert(string.Empty, parameter); return(handleResult.Value); }