private static Expression ParseProperty(Expression current, ParsedExpression toReturn) { var me = (MemberExpression)current; toReturn.PrependProperty(me.Member.Name); current = me.Expression; return(current); }
private static IParsedExpression ParseBindExtensionMethod(LambdaExpression propertyPath, object controlType) { var compiled = propertyPath.Compile(); var virtualPropertyName = compiled.DynamicInvoke(controlType) as string; var toReturn = new ParsedExpression(); toReturn.PrependProperty(virtualPropertyName); return(toReturn); }