private static void GetSelection(IFilterData data, out ParameterExpression parameterExp, out Expression propertyExp)
        {
            var childTree  = FilterDataHelper.CreateChildTree(data);
            var parentData = GetParent(childTree);

            parameterExp = Expression.Variable(parentData.PropertyType);
            propertyExp  = CreatePropertyOrSelect(childTree, parameterExp, data);
        }
        private static void CreateParameters(IFilterData data, object value, out ParameterExpression parameterExp, out ConstantExpression constExp, out Expression propertyExp)
        {
            var childTree  = FilterDataHelper.CreateChildTree(data);
            var parentData = GetParent(childTree);

            parameterExp = Expression.Variable(parentData.PropertyType);
            constExp     = Expression.Constant(value);
            propertyExp  = CreatePropertyExp(childTree, parameterExp);
        }