Table of Contents

Class CollectionResultExpression

Namespace
Microsoft.EntityFrameworkCore.Query
Assembly
Microsoft.EntityFrameworkCore.Relational.dll

An expression that represents creation of a collection in Microsoft.EntityFrameworkCore.Query.ShapedQueryExpression.ShaperExpression for relational providers.

This type is typically used by database providers (and other extensions). It is generally not used in application code.

public class CollectionResultExpression : Expression, IPrintableExpression
Inheritance
CollectionResultExpression
Implements
IPrintableExpression
Inherited Members

Constructors

CollectionResultExpression(ProjectionBindingExpression, INavigationBase?, Type)

Creates a new instance of the CollectionResultExpression class.

public CollectionResultExpression(ProjectionBindingExpression projectionBindingExpression, INavigationBase? navigation, Type elementType)

Parameters

projectionBindingExpression ProjectionBindingExpression

An expression representing how to get the subquery from SelectExpression to get the elements.

navigation INavigationBase

A navigation associated with this collection, if any.

elementType Type

The clr type of individual elements in the collection.

Properties

ElementType

The clr type of elements of the collection.

public virtual Type ElementType { get; }

Property Value

Type

Navigation

The navigation if associated with the collection.

public virtual INavigationBase? Navigation { get; }

Property Value

INavigationBase

NodeType

public override ExpressionType NodeType { get; }

Property Value

ExpressionType

ProjectionBindingExpression

The expression to get the subquery for this collection.

public virtual ProjectionBindingExpression ProjectionBindingExpression { get; }

Property Value

ProjectionBindingExpression

Type

public override Type Type { get; }

Property Value

Type

Methods

Print(ExpressionPrinter)

public virtual void Print(ExpressionPrinter expressionPrinter)

Parameters

expressionPrinter ExpressionPrinter

Update(ProjectionBindingExpression)

Creates a new expression that is like this one, but using the supplied children. If all of the children are the same, it will return this expression.

public virtual CollectionResultExpression Update(ProjectionBindingExpression projectionBindingExpression)

Parameters

projectionBindingExpression ProjectionBindingExpression

The ProjectionBindingExpression property of the result.

Returns

CollectionResultExpression

This expression if no children changed, or an expression with the updated children.

VisitChildren(ExpressionVisitor)

protected override Expression VisitChildren(ExpressionVisitor visitor)

Parameters

visitor ExpressionVisitor

Returns

Expression