예제 #1
0
        internal static void DoStaticArrayMethodCall(MethodCallExpression expression, SqlGenerate sqlGenerate)
        {
            SqlExpressionProvider.Where(expression.Arguments[expression.Arguments.Count - 1], sqlGenerate);
            sqlGenerate += " in ";

            var memberExpr = expression.Arguments[0];

            if (memberExpr.NodeType == ExpressionType.MemberAccess)
            {
                memberExpr = expression.Arguments[0] as MemberExpression;
            }

            SqlExpressionProvider.In(memberExpr, sqlGenerate);
        }
예제 #2
0
 private static new void In(MethodCallExpression expression, SqlGenerate sqlGenerate)
 {
     SqlExpressionProvider.Where(expression.Arguments[0], sqlGenerate);
     sqlGenerate += " in ";
     SqlExpressionProvider.In(expression.Arguments[1], sqlGenerate);
 }
예제 #3
0
 internal static void DoEnumerableMethodCall(MethodCallExpression expression, SqlGenerate sqlGenerate)
 {
     SqlExpressionProvider.Where(expression.Arguments[0], sqlGenerate);
     sqlGenerate += " in ";
     SqlExpressionProvider.In(expression.Object, sqlGenerate);
 }
예제 #4
0
 protected override SqlGenerate In(LambdaExpression expression, SqlGenerate sqlGenerate)
 {
     SqlExpressionProvider.In(expression.Body, sqlGenerate);
     return(sqlGenerate);
 }