protected override Expression VisitCreateIndex(SqlCreateIndexExpression createIndexExpression) { var predicate = createIndexExpression .Columns .Select(c => (Expression) new SqlFunctionCallExpression(typeof(bool), SqlFunction.IsNotNull, c.Column)) .Aggregate(Expression.And); return(createIndexExpression.ChangeWhere(createIndexExpression.Where == null ? predicate : Expression.And(createIndexExpression.Where, predicate))); }
protected override Expression VisitCreateIndex(SqlCreateIndexExpression createIndexExpression) { if (createIndexExpression.Where != null && this.explicitIndexConditionOverridesNullAnsiCompliance) { return(createIndexExpression); } if (!(createIndexExpression.Unique || this.fixNonUniqueIndexesAsWell)) { return(createIndexExpression); } var predicate = createIndexExpression .Columns .Select(c => (Expression) new SqlFunctionCallExpression(typeof(bool), SqlFunction.IsNotNull, c.Column)) .Aggregate(Expression.And); return(createIndexExpression.ChangeWhere(createIndexExpression.Where == null ? predicate : Expression.And(createIndexExpression.Where, predicate))); }
protected override Expression VisitCreateIndex(SqlCreateIndexExpression createIndexExpression) { return(base.VisitCreateIndex(createIndexExpression.ChangeWhere(null))); }