Поделиться через


RelationalQueryableMethodTranslatingExpressionVisitor.IsValidSelectExpressionForExecuteUpdate Метод

Определение

Перегрузки

IsValidSelectExpressionForExecuteUpdate(SelectExpression, EntityShaperExpression, TableExpression)

Проверяет, можно ли использовать текущее выражение выбора для выполнения операции обновления или его требуется объединить как вложенный запрос.

IsValidSelectExpressionForExecuteUpdate(SelectExpression, TableExpressionBase, TableExpression)

Проверяет, можно ли использовать текущее выражение выбора для выполнения операции обновления или его требуется объединить как вложенный запрос.

IsValidSelectExpressionForExecuteUpdate(SelectExpression, EntityShaperExpression, TableExpression)

Исходный код:
RelationalQueryableMethodTranslatingExpressionVisitor.cs

Проверяет, можно ли использовать текущее выражение выбора для выполнения операции обновления или его требуется объединить как вложенный запрос.

protected virtual bool IsValidSelectExpressionForExecuteUpdate (Microsoft.EntityFrameworkCore.Query.SqlExpressions.SelectExpression selectExpression, Microsoft.EntityFrameworkCore.Query.EntityShaperExpression entityShaperExpression, out Microsoft.EntityFrameworkCore.Query.SqlExpressions.TableExpression? tableExpression);
abstract member IsValidSelectExpressionForExecuteUpdate : Microsoft.EntityFrameworkCore.Query.SqlExpressions.SelectExpression * Microsoft.EntityFrameworkCore.Query.EntityShaperExpression * TableExpression -> bool
override this.IsValidSelectExpressionForExecuteUpdate : Microsoft.EntityFrameworkCore.Query.SqlExpressions.SelectExpression * Microsoft.EntityFrameworkCore.Query.EntityShaperExpression * TableExpression -> bool
Protected Overridable Function IsValidSelectExpressionForExecuteUpdate (selectExpression As SelectExpression, entityShaperExpression As EntityShaperExpression, ByRef tableExpression As TableExpression) As Boolean

Параметры

selectExpression
SelectExpression

Выражение выбора для проверки.

entityShaperExpression
EntityShaperExpression

Выражение формы сущности, к которому применяется операция обновления.

tableExpression
TableExpression

Табличное выражение, из которого удаляются строки.

Возвращаемое значение

Возвращает значение true , если текущее выражение выбора можно использовать для обновления "как есть", false в противном случае .

Комментарии

По умолчанию поддерживаются только выражения выбора muli-table и при необходимости с предикатом.

Поставщики могут переопределить это, чтобы обеспечить поддержку дополнительных функций выбранного выражения без отправки во вложенный запрос. При этом параметр VisitUpdate также должен быть переопределен в QuerySqlGenerator поставщика, чтобы добавить поддержку создания SQL для этой функции.

Применяется к

IsValidSelectExpressionForExecuteUpdate(SelectExpression, TableExpressionBase, TableExpression)

Исходный код:
RelationalQueryableMethodTranslatingExpressionVisitor.cs
Исходный код:
RelationalQueryableMethodTranslatingExpressionVisitor.ExecuteUpdate.cs

Проверяет, можно ли использовать текущее выражение выбора для выполнения операции обновления или его требуется объединить как вложенный запрос.

protected virtual bool IsValidSelectExpressionForExecuteUpdate (Microsoft.EntityFrameworkCore.Query.SqlExpressions.SelectExpression selectExpression, Microsoft.EntityFrameworkCore.Query.SqlExpressions.TableExpressionBase targetTable, out Microsoft.EntityFrameworkCore.Query.SqlExpressions.TableExpression? tableExpression);
abstract member IsValidSelectExpressionForExecuteUpdate : Microsoft.EntityFrameworkCore.Query.SqlExpressions.SelectExpression * Microsoft.EntityFrameworkCore.Query.SqlExpressions.TableExpressionBase * TableExpression -> bool
override this.IsValidSelectExpressionForExecuteUpdate : Microsoft.EntityFrameworkCore.Query.SqlExpressions.SelectExpression * Microsoft.EntityFrameworkCore.Query.SqlExpressions.TableExpressionBase * TableExpression -> bool
Protected Overridable Function IsValidSelectExpressionForExecuteUpdate (selectExpression As SelectExpression, targetTable As TableExpressionBase, ByRef tableExpression As TableExpression) As Boolean

Параметры

selectExpression
SelectExpression

Выражение выбора для проверки.

targetTable
TableExpressionBase

Целевая таблица, содержащая обновляемые строки.

tableExpression
TableExpression

Табличное выражение, соответствующее указанному targetTableобъекту , содержащее обновляемые строки.

Возвращаемое значение

Возвращает значение true , если текущее выражение выбора можно использовать для обновления "как есть", false в противном случае .

Комментарии

По умолчанию поддерживаются только выражения выбора с несколькими таблицами и при необходимости с предикатом.

Поставщики могут переопределить это, чтобы обеспечить поддержку дополнительных функций выбранного выражения без отправки во вложенный запрос. При этом параметр VisitUpdate также должен быть переопределен в QuerySqlGenerator поставщика, чтобы добавить поддержку создания SQL для этой функции.

Применяется к