コード例 #1
0
 private SqlExpression ApplyTypeMappingOnSqlConditional(
     SqlConditionalExpression sqlConditionalExpression, CoreTypeMapping typeMapping)
 {
     return(sqlConditionalExpression.Update(
                sqlConditionalExpression.Test,
                ApplyTypeMapping(sqlConditionalExpression.IfTrue, typeMapping),
                ApplyTypeMapping(sqlConditionalExpression.IfFalse, typeMapping)));
 }
 /// <summary>
 ///     This is an internal API that supports the Entity Framework Core infrastructure and not subject to
 ///     the same compatibility standards as public APIs. It may be changed or removed without notice in
 ///     any release. You should only use it directly in your code with extreme caution and knowing that
 ///     doing so can result in application failures when updating to a new Entity Framework Core release.
 /// </summary>
 protected override Expression VisitExtension(Expression extensionExpression)
 {
     return(extensionExpression switch
     {
         ShapedQueryExpression shapedQueryExpression => VisitShapedQueryExpression(shapedQueryExpression),
         ReadItemExpression readItemExpression => readItemExpression,
         SelectExpression selectExpression => VisitSelect(selectExpression),
         SqlConditionalExpression sqlConditionalExpression => VisitSqlConditional(sqlConditionalExpression),
         _ => base.VisitExtension(extensionExpression),
     });
コード例 #3
0
        /// <summary>
        ///     This is an internal API that supports the Entity Framework Core infrastructure and not subject to
        ///     the same compatibility standards as public APIs. It may be changed or removed without notice in
        ///     any release. You should only use it directly in your code with extreme caution and knowing that
        ///     doing so can result in application failures when updating to a new Entity Framework Core release.
        /// </summary>
        protected override Expression VisitSqlConditional(SqlConditionalExpression sqlConditionalExpression)
        {
            _sqlBuilder.Append("(");
            Visit(sqlConditionalExpression.Test);
            _sqlBuilder.Append(" ? ");
            Visit(sqlConditionalExpression.IfTrue);
            _sqlBuilder.Append(" : ");
            Visit(sqlConditionalExpression.IfFalse);
            _sqlBuilder.Append(")");

            return(sqlConditionalExpression);
        }
コード例 #4
0
 /// <summary>
 ///     This is an internal API that supports the Entity Framework Core infrastructure and not subject to
 ///     the same compatibility standards as public APIs. It may be changed or removed without notice in
 ///     any release. You should only use it directly in your code with extreme caution and knowing that
 ///     doing so can result in application failures when updating to a new Entity Framework Core release.
 /// </summary>
 protected abstract Expression VisitSqlConditional(SqlConditionalExpression sqlConditionalExpression);
コード例 #5
0
 protected abstract Expression VisitSqlConditional([NotNull] SqlConditionalExpression sqlConditionalExpression);