Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var stuff = JObject.Parse("{ 'Name': 'Jon Smith', 'Address': { 'City': 'New York', 'State': 'NY' }, 'Age': 42 }");
- ParameterExpression parameterExpression = Expression.Parameter(typeof(JObject), "g");
- var indexexpr = Expression.MakeIndex(parameterExpression, typeof(JObject).GetProperty("Item", new[] { typeof(string) }),
- new[] { Expression.Constant("Address") });
- var secondlevel = Expression.MakeIndex(indexexpr, typeof(JToken).GetProperty("Item", new[] { typeof(string) }),
- new[] { Expression.Constant("State") });
- var conversion = Expression.Convert(secondlevel, typeof(string));
- var result = Expression.Equal(conversion, Expression.Constant("NY"));
- var fun =Expression.Lambda<Func<JObject, bool>>(result, new[] {parameterExpression}).Compile();
- var istrue = fun(stuff);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement