ChangeToNullable() public method

public ChangeToNullable ( ) : SqlColumnExpression
return SqlColumnExpression
		protected override Expression VisitColumn(SqlColumnExpression columnExpression)
		{
			if (!aliases.Contains(columnExpression.SelectAlias))
			{
				var nullableType = columnExpression.Type.MakeNullable();

				if (nullableType == columnExpression.Type)
				{
					replacedExpressions.Add(columnExpression);

					return new SqlConstantPlaceholderExpression(this.placeholderCount++, Expression.Constant(null, columnExpression.Type.MakeNullable()));
				}
				else
				{
					replacedExpressions.Add(columnExpression.ChangeToNullable());

					return Expression.Convert(new SqlConstantPlaceholderExpression(this.placeholderCount++, Expression.Constant(null, columnExpression.Type.MakeNullable())), columnExpression.Type);
				}
			}

			return base.VisitColumn(columnExpression);
		}