Compartilhar via


RelationalQueryableMethodTranslatingExpressionVisitor.IsValidSelectExpressionForExecuteUpdate Método

Definição

Sobrecargas

IsValidSelectExpressionForExecuteUpdate(SelectExpression, EntityShaperExpression, TableExpression)

Valida se a expressão de seleção atual pode ser usada para executar a operação de atualização ou se ela precisa ser unida como uma subconsulta.

IsValidSelectExpressionForExecuteUpdate(SelectExpression, TableExpressionBase, TableExpression)

Valida se a expressão de seleção atual pode ser usada para executar a operação de atualização ou se ela precisa ser unida como uma subconsulta.

IsValidSelectExpressionForExecuteUpdate(SelectExpression, EntityShaperExpression, TableExpression)

Origem:
RelationalQueryableMethodTranslatingExpressionVisitor.cs

Valida se a expressão de seleção atual pode ser usada para executar a operação de atualização ou se ela precisa ser unida como uma subconsulta.

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

Parâmetros

selectExpression
SelectExpression

A expressão select a ser validada.

entityShaperExpression
EntityShaperExpression

A expressão do shaper de entidade na qual a operação de atualização está sendo aplicada.

tableExpression
TableExpression

A expressão de tabela da qual as linhas estão sendo excluídas.

Retornos

Retornará true se a expressão de seleção atual puder ser usada para atualização no estado em que se encontra, false caso contrário.

Comentários

Por padrão, há suporte apenas para expressões de seleção muli-table e, opcionalmente, com um predicado.

Os provedores podem substituir isso para permitir que mais recursos de expressão de seleção sejam suportados sem enviar por push para uma subconsulta. Ao fazer isso, o VisitUpdate também deve ser substituído no QuerySqlGenerator do provedor para adicionar suporte à geração de SQL para o recurso.

Aplica-se a

IsValidSelectExpressionForExecuteUpdate(SelectExpression, TableExpressionBase, TableExpression)

Origem:
RelationalQueryableMethodTranslatingExpressionVisitor.cs
Origem:
RelationalQueryableMethodTranslatingExpressionVisitor.ExecuteUpdate.cs

Valida se a expressão de seleção atual pode ser usada para executar a operação de atualização ou se ela precisa ser unida como uma subconsulta.

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

Parâmetros

selectExpression
SelectExpression

A expressão select a ser validada.

targetTable
TableExpressionBase

A tabela de destino que contém as linhas a serem atualizadas.

tableExpression
TableExpression

A expressão de tabela correspondente ao fornecido targetTable, que contém as linhas a serem atualizadas.

Retornos

Retornará true se a expressão de seleção atual puder ser usada para atualização no estado em que se encontra, false caso contrário.

Comentários

Por padrão, há suporte apenas para expressões de seleção de várias tabelas e, opcionalmente, com um predicado.

Os provedores podem substituir isso para permitir que mais recursos de expressão de seleção sejam suportados sem enviar por push para uma subconsulta. Ao fazer isso, o VisitUpdate também deve ser substituído no QuerySqlGenerator do provedor para adicionar suporte à geração de SQL para o recurso.

Aplica-se a