RelationalQueryableMethodTranslatingExpressionVisitor.IsValidSelectExpressionForExecuteUpdate Metodo

Definizione

Overload

IsValidSelectExpressionForExecuteUpdate(SelectExpression, EntityShaperExpression, TableExpression)

Convalida se l'espressione di selezione corrente può essere usata per eseguire l'operazione di aggiornamento o deve essere unita come sottoquery.

IsValidSelectExpressionForExecuteUpdate(SelectExpression, TableExpressionBase, TableExpression)

Convalida se l'espressione di selezione corrente può essere usata per eseguire l'operazione di aggiornamento o deve essere unita come sottoquery.

IsValidSelectExpressionForExecuteUpdate(SelectExpression, EntityShaperExpression, TableExpression)

Convalida se l'espressione di selezione corrente può essere usata per eseguire l'operazione di aggiornamento o deve essere unita come sottoquery.

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

Parametri

selectExpression
SelectExpression

Espressione seleziona da convalidare.

entityShaperExpression
EntityShaperExpression

Espressione entity shaper in cui viene applicata l'operazione di aggiornamento.

tableExpression
TableExpression

Espressione di tabella da cui vengono eliminate le righe.

Restituisce

Restituisce true se l'espressione di selezione corrente può essere usata per l'aggiornamento come è, false in caso contrario.

Commenti

Per impostazione predefinita, solo le espressioni di selezione della tabella muli sono supportate e facoltativamente con un predicato.

I provider possono eseguire l'override di questo per consentire il supporto di funzionalità di espressione più selezionate senza eseguire il push in una sottoquery. Quando si esegue questa operazione, VisitUpdate deve essere sottoposto a override anche nell'oggetto QuerySqlGenerator del provider per aggiungere il supporto di generazione SQL per la funzionalità.

Si applica a

IsValidSelectExpressionForExecuteUpdate(SelectExpression, TableExpressionBase, TableExpression)

Convalida se l'espressione di selezione corrente può essere usata per eseguire l'operazione di aggiornamento o deve essere unita come sottoquery.

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

Parametri

selectExpression
SelectExpression

Espressione seleziona da convalidare.

targetTable
TableExpressionBase

Tabella di destinazione contenente le righe da aggiornare.

tableExpression
TableExpression

Espressione di tabella corrispondente all'oggetto specificato targetTablecontenente le righe da aggiornare.

Restituisce

Restituisce true se l'espressione di selezione corrente può essere usata per l'aggiornamento come è, false in caso contrario.

Commenti

Per impostazione predefinita, sono supportate solo espressioni di selezione a più tabelle e, facoltativamente, con un predicato.

I provider possono eseguire l'override di questo per consentire il supporto di funzionalità di espressione più selezionate senza eseguire il push in una sottoquery. Quando si esegue questa operazione, VisitUpdate deve essere sottoposto a override anche nell'oggetto QuerySqlGenerator del provider per aggiungere il supporto di generazione SQL per la funzionalità.

Si applica a