StructuralTypeShaperExpression Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
An expression that represents creation of a structural type instance in ShaperExpression.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
[System.Diagnostics.DebuggerDisplay("{DebuggerDisplay(),nq}")]
[System.Runtime.CompilerServices.Nullable(0)]
public class StructuralTypeShaperExpression : System.Linq.Expressions.Expression, Microsoft.EntityFrameworkCore.Query.IPrintableExpression
[<System.Diagnostics.DebuggerDisplay("{DebuggerDisplay(),nq}")>]
[<System.Runtime.CompilerServices.Nullable(0)>]
type StructuralTypeShaperExpression = class
inherit Expression
interface IPrintableExpression
Public Class StructuralTypeShaperExpression
Inherits Expression
Implements IPrintableExpression
- Inheritance
-
StructuralTypeShaperExpression
- Derived
- Attributes
- Implements
Remarks
See Implementation of database providers and extensions and How EF Core queries work for more information and examples.
Constructors
| Name | Description |
|---|---|
| StructuralTypeShaperExpression(ITypeBase, Expression, Boolean, LambdaExpression, Type) |
Creates a new instance of the StructuralTypeShaperExpression class. |
| StructuralTypeShaperExpression(ITypeBase, Expression, Boolean, LambdaExpression) |
Creates a new instance of the StructuralTypeShaperExpression class. |
| StructuralTypeShaperExpression(ITypeBase, Expression, Boolean) |
Creates a new instance of the StructuralTypeShaperExpression class. |
Properties
| Name | Description |
|---|---|
| IsNullable |
A value indicating whether this instance can be null. |
| MaterializationCondition |
The materialization condition to use for shaping this structural type. |
| NodeType | Gets the node type of this Expression. |
| StructuralType |
The entity or complex type being shaped. |
| Type | Gets the static type of the expression that this Expression represents. |
| ValueBufferExpression |
The expression representing a ValueBuffer to get values from that are used to create the instance. |
Methods
| Name | Description |
|---|---|
| CreateUnableToDiscriminateException(ITypeBase, Object) |
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. |
| CreateUnableToDiscriminateExceptionExpression(ITypeBase, Expression) |
Creates an expression to throw an exception when we're unable to determine the structural type to materialize based on discriminator value. |
| DebuggerDisplay() |
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. |
| GenerateMaterializationCondition(ITypeBase, Boolean) |
Creates an expression of Func<T,TResult> to determine which type to materialize. |
| MakeClrTypeNonNullable() |
Changes the Type of this expression to be non nullable. |
| MakeClrTypeNullable() |
Changes the Type of this expression to be nullable. |
| MakeNullable(Boolean) |
Assigns nullability for this shaper, indicating whether it can shape null instances or not. |
| Update(Expression) |
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. |
| VisitChildren(ExpressionVisitor) | Reduces the node and then calls the visitor delegate on the reduced expression. The method throws an exception if the node is not reducible. |
| WithType(ITypeBase) |
Changes the structural type being shaped by this shaper. |
Explicit Interface Implementations
| Name | Description |
|---|---|
| IPrintableExpression.Print(ExpressionPrinter) |
Creates a printable string representation of the given expression using ExpressionPrinter. |