ranjit powar
ranjit powar

Reputation: 104

DynamicExpressionParser not working while concating two arrays

I want to concat two array in LINQ dynamic parser.

I am sending dictionary input as below

    object a= new object[]{1d,0d,1d};
    object b = new object[]{};
    var dict = new Dictionary<string, object>();
    dict["KIStrike"] = a;
    dict["NonKIStrike"] = b;

It throws {"')' or ',' expected"} exception, when I am executing below statement

var exp = "Enumerable.Concat(dict[\"KIStrike\"] as IEnumerable<object>, dict[\"NonKIStrike\"] as IEnumerable<object>)";
var param = Expression.Parameter(typeof(Dictionary<string, object>), "dict");
var lambda = DynamicExpressionParser.ParseLambda(new[] { param }, null, exp);
var result = lambda.Compile().DynamicInvoke(dict);

Whether my expression is incorrect. Please let me know if you have any solution. Thanks in advance!!!.

Upvotes: 0

Views: 254

Answers (0)

Related Questions