Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var cat = new Cat();
- Func<Cat, string> func = c => c.CatMethod(42, "MyTested ASP.NET");
- Func<Cat, bool> propFunc = c => c.BoolProperty;
- Expression<Func<Cat, string>> expr = c => c.CatMethod(42, "MyTested ASP.NET");
- Expression<Func<Cat, bool>> propExpr = c => c.BoolProperty;
- var body = expr.Body;
- ParseExpression(expr);
- ParseExpression(propExpr);
- }
- private static void ParseExpression(Expression expression)
- {
- if(expression.NodeType == ExpressionType.Lambda)
- {
- var lambdaExpression = (LambdaExpression)expression;
- Console.WriteLine(lambdaExpression.Parameters.);
- ParseExpression(lambdaExpression.Body);
- }
- else if(expression.NodeType == ExpressionType.Call)
- {
- var methodCallExpression = (MethodCallExpression)expression;
- }
- else if(expression.NodeType == ExpressionType.MemberAccess)
- {
- var memberExpression = (MemberExpression)expression;
- Console.WriteLine(memberExpression.Member.Name);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement