Esempio n. 1
0
        void IPrintableExpression.Print(ExpressionPrinter expressionPrinter)
        {
            Check.NotNull(expressionPrinter, nameof(expressionPrinter));

            expressionPrinter.AppendLine("IncludeExpression(");
            using (expressionPrinter.Indent())
            {
                expressionPrinter.Visit(EntityExpression);
                expressionPrinter.AppendLine(", ");
                expressionPrinter.Visit(NavigationExpression);
                expressionPrinter.AppendLine($", {Navigation.Name})");
            }
        }
        void IPrintableExpression.Print(ExpressionPrinter expressionPrinter)
        {
            Check.NotNull(expressionPrinter, nameof(expressionPrinter));

            expressionPrinter.AppendLine("CollectionShaper:");
            using (expressionPrinter.Indent())
            {
                expressionPrinter.Append("(");
                expressionPrinter.Visit(Projection);
                expressionPrinter.Append(", ");
                expressionPrinter.Visit(InnerShaper);
                expressionPrinter.AppendLine($", {Navigation?.Name})");
            }
        }
 private static void VisitArguments(ExpressionPrinter expressionPrinter, IReadOnlyList <Expression> arguments)
 {
     for (var i = 0; i < arguments.Count; i++)
     {
         expressionPrinter.Visit(arguments[i]);
         expressionPrinter.Append(i == arguments.Count - 1 ? "" : ", ");
     }
 }
 public virtual void Print(ExpressionPrinter expressionPrinter)
 {
     expressionPrinter.StringBuilder.AppendLine("PopulateCollection:");
     using (expressionPrinter.StringBuilder.Indent())
     {
         expressionPrinter.StringBuilder.Append("Parent:");
         expressionPrinter.Visit(Parent);
     }
 }
Esempio n. 5
0
 public virtual void Print(ExpressionPrinter expressionPrinter)
 {
     expressionPrinter.AppendLine("InitializeCollection:");
     using (expressionPrinter.Indent())
     {
         expressionPrinter.AppendLine($"CollectionId: {CollectionId}");
         expressionPrinter.AppendLine($"Navigation: {Navigation?.Name}");
         expressionPrinter.Append("Parent:");
         expressionPrinter.Visit(Parent);
         expressionPrinter.AppendLine();
         expressionPrinter.Append("ParentIdentifier:");
         expressionPrinter.Visit(ParentIdentifier);
         expressionPrinter.AppendLine();
         expressionPrinter.Append("OuterIdentifier:");
         expressionPrinter.Visit(OuterIdentifier);
         expressionPrinter.AppendLine();
     }
 }
 public virtual void Print(ExpressionPrinter expressionPrinter)
 {
     expressionPrinter.AppendLine("MaterializeCollectionNavigation(");
     using (expressionPrinter.Indent())
     {
         expressionPrinter.AppendLine($"navigation: {Navigation.ToDebugString(detailed: false)},");
         expressionPrinter.Append("subquery: ");
         expressionPrinter.Visit(Subquery);
     }
 }
Esempio n. 7
0
 public virtual void Print(ExpressionPrinter expressionPrinter)
 {
     expressionPrinter.AppendLine("MaterializeCollectionNavigation(");
     using (expressionPrinter.Indent())
     {
         expressionPrinter.AppendLine($"navigation: Navigation: {Navigation.DeclaringEntityType.DisplayName()}.{Navigation.Name},");
         expressionPrinter.Append("subquery: ");
         expressionPrinter.Visit(Subquery);
     }
 }
 /// <inheritdoc />
 void IPrintableExpression.Print(ExpressionPrinter expressionPrinter)
 {
     expressionPrinter.AppendLine("RelationalCollectionShaper:");
     using (expressionPrinter.Indent())
     {
         expressionPrinter.Append("ParentIdentifier:");
         expressionPrinter.Visit(ParentIdentifier);
         expressionPrinter.AppendLine();
         expressionPrinter.Append("ChildIdentifier:");
         expressionPrinter.Visit(ChildIdentifier);
         expressionPrinter.AppendLine();
         expressionPrinter.Append("SelectExpression:");
         expressionPrinter.Visit(SelectExpression);
         expressionPrinter.AppendLine();
         expressionPrinter.Append("InnerShaper:");
         expressionPrinter.Visit(InnerShaper);
         expressionPrinter.AppendLine();
         expressionPrinter.AppendLine($"Navigation: {Navigation?.Name}");
     }
 }
Esempio n. 9
0
        public virtual void Print(ExpressionPrinter expressionPrinter)
        {
            Check.NotNull(expressionPrinter, nameof(expressionPrinter));

            expressionPrinter.AppendLine("PopulateCollection:");
            using (expressionPrinter.Indent())
            {
                expressionPrinter.Append("Parent:");
                expressionPrinter.Visit(Parent);
            }
        }
Esempio n. 10
0
        public virtual void Print(ExpressionPrinter expressionPrinter)
        {
            expressionPrinter.AppendLine(nameof(ShapedQueryExpression) + ": ");
            using (expressionPrinter.Indent())
            {
                expressionPrinter.AppendLine(nameof(QueryExpression) + ": ");
                using (expressionPrinter.Indent())
                {
                    expressionPrinter.Visit(QueryExpression);
                }

                expressionPrinter.AppendLine().Append(nameof(ShaperExpression) + ": ");
                using (expressionPrinter.Indent())
                {
                    expressionPrinter.Visit(ShaperExpression);
                }

                expressionPrinter.AppendLine();
            }
        }
Esempio n. 11
0
 public virtual void Print(ExpressionPrinter expressionPrinter)
 {
     expressionPrinter.AppendLine("RelationalCollectionShaper:");
     using (expressionPrinter.Indent())
     {
         expressionPrinter.AppendLine($"CollectionId: {CollectionId}");
         expressionPrinter.Append("ParentIdentifier:");
         expressionPrinter.Visit(ParentIdentifier);
         expressionPrinter.AppendLine();
         expressionPrinter.Append("OuterIdentifier:");
         expressionPrinter.Visit(OuterIdentifier);
         expressionPrinter.AppendLine();
         expressionPrinter.Append("SelfIdentifier:");
         expressionPrinter.Visit(SelfIdentifier);
         expressionPrinter.AppendLine();
         expressionPrinter.Append("InnerShaper:");
         expressionPrinter.Visit(InnerShaper);
         expressionPrinter.AppendLine();
         expressionPrinter.AppendLine($"Navigation: {Navigation?.Name}");
     }
 }
        /// <inheritdoc />
        void IPrintableExpression.Print(ExpressionPrinter expressionPrinter)
        {
            Check.NotNull(expressionPrinter, nameof(expressionPrinter));

            expressionPrinter.AppendLine("MaterializeCollectionNavigation(");
            using (expressionPrinter.Indent())
            {
                expressionPrinter.AppendLine($"Navigation: {Navigation.DeclaringEntityType.DisplayName()}.{Navigation.Name},");
                expressionPrinter.Append("subquery: ");
                expressionPrinter.Visit(Subquery);
            }
        }
Esempio n. 13
0
        /// <inheritdoc />
        void IPrintableExpression.Print(ExpressionPrinter expressionPrinter)
        {
            Check.NotNull(expressionPrinter, nameof(expressionPrinter));

            expressionPrinter.AppendLine("RelationalCollectionShaper:");
            using (expressionPrinter.Indent())
            {
                expressionPrinter.Append("ParentIdentifier:");
                expressionPrinter.Visit(ParentIdentifier);
                expressionPrinter.AppendLine();
                expressionPrinter.Append("OuterIdentifier:");
                expressionPrinter.Visit(OuterIdentifier);
                expressionPrinter.AppendLine();
                expressionPrinter.Append("SelfIdentifier:");
                expressionPrinter.Visit(SelfIdentifier);
                expressionPrinter.AppendLine();
                expressionPrinter.Append("InnerShaper:");
                expressionPrinter.Visit(InnerShaper);
                expressionPrinter.AppendLine();
                expressionPrinter.AppendLine($"Navigation: {Navigation?.Name}");
            }
        }
        /// <inheritdoc />
        void IPrintableExpression.Print(ExpressionPrinter expressionPrinter)
        {
            Check.NotNull(expressionPrinter, nameof(expressionPrinter));

            expressionPrinter.AppendLine(nameof(ShapedQueryExpression) + ": ");
            using (expressionPrinter.Indent())
            {
                expressionPrinter.AppendLine(nameof(QueryExpression) + ": ");
                using (expressionPrinter.Indent())
                {
                    expressionPrinter.Visit(QueryExpression);
                }

                expressionPrinter.AppendLine().Append(nameof(ShaperExpression) + ": ");
                using (expressionPrinter.Indent())
                {
                    expressionPrinter.Visit(ShaperExpression);
                }

                expressionPrinter.AppendLine();
            }
        }
 /// <inheritdoc />
 public virtual void Print(ExpressionPrinter expressionPrinter)
 {
     expressionPrinter.AppendLine("CollectionResultExpression:");
     using (expressionPrinter.Indent())
     {
         expressionPrinter.Append("ProjectionBindingExpression:");
         expressionPrinter.Visit(ProjectionBindingExpression);
         expressionPrinter.AppendLine();
         if (Navigation != null)
         {
             expressionPrinter.Append("Navigation:").AppendLine(Navigation.ToString() !);
         }
         expressionPrinter.Append("ElementType:").AppendLine(ElementType.ShortDisplayName());
     }
 }
        /// <inheritdoc />
        void IPrintableExpression.Print(ExpressionPrinter expressionPrinter)
        {
            expressionPrinter.AppendLine(nameof(EntityShaperExpression) + ": ");
            using (expressionPrinter.Indent())
            {
                expressionPrinter.AppendLine(EntityType.Name);
                expressionPrinter.AppendLine(nameof(ValueBufferExpression) + ": ");
                using (expressionPrinter.Indent())
                {
                    expressionPrinter.Visit(ValueBufferExpression);
                    expressionPrinter.AppendLine();
                }

                expressionPrinter.Append(nameof(IsNullable) + ": ");
                expressionPrinter.AppendLine(IsNullable.ToString());
            }
        }
Esempio n. 17
0
        public virtual void Print(ExpressionPrinter expressionPrinter)
        {
            expressionPrinter.AppendLine(nameof(EntityShaperExpression) + ": ");
            using (expressionPrinter.Indent())
            {
                expressionPrinter.AppendLine(EntityType);
                expressionPrinter.AppendLine(nameof(ValueBufferExpression) + ": ");
                using (expressionPrinter.Indent())
                {
                    expressionPrinter.Visit(ValueBufferExpression);
                    expressionPrinter.AppendLine();
                }

                expressionPrinter.Append(nameof(IsNullable) + ": ");
                expressionPrinter.AppendLine(IsNullable);
            }
        }
        public virtual void Print(ExpressionPrinter expressionPrinter)
        {
            if (AccessOperation is MemberExpression memberExpression)
            {
                expressionPrinter.Visit(Caller);
                expressionPrinter.Append("?." + memberExpression.Member.Name);

                return;
            }

            if (AccessOperation is MethodCallExpression methodCallExpression)
            {
                if (methodCallExpression.Object != null)
                {
                    expressionPrinter.Visit(Caller);
                    expressionPrinter.Append("?." + methodCallExpression.Method.Name + "(");
                    VisitArguments(expressionPrinter, methodCallExpression.Arguments);
                    expressionPrinter.Append(")");

                    return;
                }

                if (methodCallExpression.TryGetEFPropertyArguments(out _, out var propertyName))
                {
                    var method = methodCallExpression.Method;

                    expressionPrinter.Append(method.DeclaringType?.Name + "." + method.Name + "(?");
                    expressionPrinter.Visit(Caller);
                    expressionPrinter.Append("?, ");
                    expressionPrinter.Visit(Constant(propertyName));
                    expressionPrinter.Append(")");

                    return;
                }
            }

            expressionPrinter.Append("?");
            expressionPrinter.Visit(Caller);
            expressionPrinter.Append(" | ");
            expressionPrinter.Visit(AccessOperation);
            expressionPrinter.Append("?");
        }
 public virtual void Print(ExpressionPrinter expressionPrinter)
 {
     expressionPrinter.Append($"MaterializeCollectionNavigation({Navigation}, ");
     expressionPrinter.Visit(Subquery);
     expressionPrinter.Append(")");
 }