[ https://issues.apache.org/jira/browse/IGNITE-18257 ]
Pavel Tupitsyn deleted comment on IGNITE-18257:
-----------------------------------------
was (Author: ptupitsyn):
Update *VisitUnary* like this:
{code}
protected override Expression VisitUnary(UnaryExpression expression)
{
var closeBracket = false;
switch (expression.NodeType)
{
case ExpressionType.Negate:
ResultBuilder.Append("(-");
closeBracket = true;
break;
case ExpressionType.Not:
ResultBuilder.Append("(not ");
closeBracket = true;
break;
case ExpressionType.Convert:
ResultBuilder.Append("cast(");
break;
default:
return base.VisitUnary(expression);
}
Visit(expression.Operand);
if (closeBracket)
{
ResultBuilder.Append(')');
}
else if (expression.NodeType is ExpressionType.Convert)
{
ResultBuilder.Append(" as ");
// TODO: One-step type conversion (here and in other places).
var sqlColumnType = expression.Type.ToSqlColumnType() ??
throw new NotSupportedException("Unsupported
type: " + expression.Type);
var sqlTypeName = sqlColumnType.ToSqlTypeName();
ResultBuilder.Append(sqlTypeName).Append(')');
}
return expression;
}
{code}
> .NET: Thin 3.0: LINQ: Type casts
> --------------------------------
>
> Key: IGNITE-18257
> URL: https://issues.apache.org/jira/browse/IGNITE-18257
> Project: Ignite
> Issue Type: Improvement
> Components: platforms, thin client
> Reporter: Pavel Tupitsyn
> Assignee: Pavel Tupitsyn
> Priority: Major
> Labels: .NET, LINQ, ignite-3
> Fix For: 3.0.0-beta2
>
>
> Implement type casts when necessary. Users should be able to compare,
> project, join and perform other operations on different column types.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)