예제 #1
0
            private SqlExpression ExtractParameter(SqlExpression expr)
            {
                var clrType = expr.ClrType;

                if (expr.ClrType.IsValueType && !TypeSystem.IsNullableType(expr.ClrType))
                {
                    clrType = typeof(Nullable <>).MakeGenericType(new[] { expr.ClrType });
                }
                externals.Add(expr);
                var pName = sqlIdentity.ParameterPrefix + "x" + (parameters.Count + 1);
                var item  = new SqlParameter(clrType, expr.SqlType, pName, expr.SourceExpression);

                parameters.Add(item);
                return(item);
            }
예제 #2
0
 private static bool IsNullableValue(SqlMember m)
 {
     return(TypeSystem.IsNullableType(m.Expression.ClrType) && (m.Member.Name == "Value"));
 }