RelationalQueryableMethodTranslatingExpressionVisitor.IsValidSelectExpressionForExecuteDelete Method
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.
Overloads
| Name | Description |
|---|---|
| IsValidSelectExpressionForExecuteDelete(SelectExpression) |
Checks weather the current select expression can be used as-is for executing a delete operation, or whether it must be pushed down into a subquery. |
| IsValidSelectExpressionForExecuteDelete(SelectExpression, EntityShaperExpression, TableExpression) |
Checks weather the current select expression can be used as-is for execute a delete operation, or whether it must be pushed down into a subquery. |
| IsValidSelectExpressionForExecuteDelete(SelectExpression, StructuralTypeShaperExpression, TableExpression) |
Obsolete.
This method has been obsoleted, use the method accepting a single SelectExpression parameter instead. |
IsValidSelectExpressionForExecuteDelete(SelectExpression)
Checks weather the current select expression can be used as-is for executing a delete operation, or whether it must be pushed down into a subquery.
protected virtual bool IsValidSelectExpressionForExecuteDelete(Microsoft.EntityFrameworkCore.Query.SqlExpressions.SelectExpression selectExpression);
abstract member IsValidSelectExpressionForExecuteDelete : Microsoft.EntityFrameworkCore.Query.SqlExpressions.SelectExpression -> bool
override this.IsValidSelectExpressionForExecuteDelete : Microsoft.EntityFrameworkCore.Query.SqlExpressions.SelectExpression -> bool
Protected Overridable Function IsValidSelectExpressionForExecuteDelete (selectExpression As SelectExpression) As Boolean
Parameters
- selectExpression
- SelectExpression
The select expression to validate.
Returns
Returns true if the current select expression can be used for delete as-is, false otherwise.
Remarks
By default, only single-table select expressions are supported, and optionally with a predicate.
Providers can override this to allow more select expression features to be supported without pushing down into a subquery. When doing this, VisitDelete must also be overridden in the provider's QuerySqlGenerator to add SQL generation support for the feature.
Applies to
IsValidSelectExpressionForExecuteDelete(SelectExpression, EntityShaperExpression, TableExpression)
Checks weather the current select expression can be used as-is for execute a delete operation, or whether it must be pushed down into a subquery.
protected virtual bool IsValidSelectExpressionForExecuteDelete(Microsoft.EntityFrameworkCore.Query.SqlExpressions.SelectExpression selectExpression, Microsoft.EntityFrameworkCore.Query.EntityShaperExpression entityShaperExpression, out Microsoft.EntityFrameworkCore.Query.SqlExpressions.TableExpression? tableExpression);
abstract member IsValidSelectExpressionForExecuteDelete : Microsoft.EntityFrameworkCore.Query.SqlExpressions.SelectExpression * Microsoft.EntityFrameworkCore.Query.EntityShaperExpression * TableExpression -> bool
override this.IsValidSelectExpressionForExecuteDelete : Microsoft.EntityFrameworkCore.Query.SqlExpressions.SelectExpression * Microsoft.EntityFrameworkCore.Query.EntityShaperExpression * TableExpression -> bool
Protected Overridable Function IsValidSelectExpressionForExecuteDelete (selectExpression As SelectExpression, entityShaperExpression As EntityShaperExpression, ByRef tableExpression As TableExpression) As Boolean
Parameters
- selectExpression
- SelectExpression
The select expression to validate.
- entityShaperExpression
- EntityShaperExpression
The entity shaper expression on which the delete operation is being applied.
- tableExpression
- TableExpression
The table expression from which rows are being deleted.
Returns
Returns true if the current select expression can be used for delete as-is, false otherwise.
Remarks
By default, only single-table select expressions are supported, and optionally with a predicate.
Providers can override this to allow more select expression features to be supported without pushing down into a subquery. When doing this, VisitDelete must also be overridden in the provider's QuerySqlGenerator to add SQL generation support for the feature.
Applies to
IsValidSelectExpressionForExecuteDelete(SelectExpression, StructuralTypeShaperExpression, TableExpression)
Caution
This method has been obsoleted, use the method accepting a single SelectExpression parameter instead.
This method has been obsoleted, use the method accepting a single SelectExpression parameter instead.
[System.Obsolete("This method has been obsoleted, use the method accepting a single SelectExpression parameter instead.", true)]
protected virtual bool IsValidSelectExpressionForExecuteDelete(Microsoft.EntityFrameworkCore.Query.SqlExpressions.SelectExpression selectExpression, Microsoft.EntityFrameworkCore.Query.StructuralTypeShaperExpression shaper, out Microsoft.EntityFrameworkCore.Query.SqlExpressions.TableExpression? tableExpression);
protected virtual bool IsValidSelectExpressionForExecuteDelete(Microsoft.EntityFrameworkCore.Query.SqlExpressions.SelectExpression selectExpression, Microsoft.EntityFrameworkCore.Query.StructuralTypeShaperExpression shaper, out Microsoft.EntityFrameworkCore.Query.SqlExpressions.TableExpression? tableExpression);
[<System.Obsolete("This method has been obsoleted, use the method accepting a single SelectExpression parameter instead.", true)>]
abstract member IsValidSelectExpressionForExecuteDelete : Microsoft.EntityFrameworkCore.Query.SqlExpressions.SelectExpression * Microsoft.EntityFrameworkCore.Query.StructuralTypeShaperExpression * TableExpression -> bool
override this.IsValidSelectExpressionForExecuteDelete : Microsoft.EntityFrameworkCore.Query.SqlExpressions.SelectExpression * Microsoft.EntityFrameworkCore.Query.StructuralTypeShaperExpression * TableExpression -> bool
abstract member IsValidSelectExpressionForExecuteDelete : Microsoft.EntityFrameworkCore.Query.SqlExpressions.SelectExpression * Microsoft.EntityFrameworkCore.Query.StructuralTypeShaperExpression * TableExpression -> bool
override this.IsValidSelectExpressionForExecuteDelete : Microsoft.EntityFrameworkCore.Query.SqlExpressions.SelectExpression * Microsoft.EntityFrameworkCore.Query.StructuralTypeShaperExpression * TableExpression -> bool
Protected Overridable Function IsValidSelectExpressionForExecuteDelete (selectExpression As SelectExpression, shaper As StructuralTypeShaperExpression, ByRef tableExpression As TableExpression) As Boolean
Parameters
- selectExpression
- SelectExpression
The select expression to validate.
The structural type shaper expression on which the delete operation is being applied.
- tableExpression
- TableExpression
The table expression from which rows are being deleted.
Returns
Returns true if the current select expression can be used for delete as-is, false otherwise.
- Attributes
Remarks
By default, only single-table select expressions are supported, and optionally with a predicate.
Providers can override this to allow more select expression features to be supported without pushing down into a subquery. When doing this, VisitDelete must also be overridden in the provider's QuerySqlGenerator to add SQL generation support for the feature.