Example #1
0
        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);
        }
Example #3
0
        public async Task <JToken> Convert(object parameter)
        {
            var handleResult = await _crmActionParameterHandle.Convert(string.Empty, parameter);

            return(handleResult.Value);
        }