Lingua

SqlTreePruner Classe

Definizione

Visitatore che elabora un albero SQL e elimina parti che non sono necessarie.

Questo tipo viene in genere usato dai provider di database (e da altre estensioni). In genere non viene usato nel codice dell'applicazione.

[System.Runtime.CompilerServices.Nullable(0)]
public class SqlTreePruner : System.Linq.Expressions.ExpressionVisitor
[<System.Runtime.CompilerServices.Nullable(0)>]
type SqlTreePruner = class
    inherit ExpressionVisitor
Public Class SqlTreePruner
Inherits ExpressionVisitor
Ereditarietà
SqlTreePruner
Attributi

Costruttori

Nome Descrizione
SqlTreePruner()

Visitatore che elabora un albero SQL e elimina parti che non sono necessarie.

Questo tipo viene in genere usato dai provider di database (e da altre estensioni). In genere non viene usato nel codice dell'applicazione.

Proprietà

Nome Descrizione
CurrentTableAlias

Quando si visita un elemento annidato TableExpressionBase (ad esempio, una selezione all'interno di un'operazione set), contiene l'alias di tabella della tabella più in alto (quello a cui fa riferimento l'alias per colonne). Questo è necessario per eliminare correttamente la proiezione di tali selezioni annidate, che non hanno un alias.

ReferencedColumnMap

Esegue il mapping degli alias di tabella all'elenco di alias di colonna a cui viene fatto riferimento.

Metodi

Nome Descrizione
Prune(Expression)

Elimina le parti indicate Expression, rimuovendo le parti che non sono necessarie.

PruneSelect(SelectExpression, Boolean)

Elimina una SelectExpressionclasse , rimuove le tabelle all'interno del quale non viene fatto riferimento e, facoltativamente, anche le proiezioni a cui non viene fatto riferimento dall'esterno.

PruneTopLevelSelect(SelectExpression)

Si tratta di un'API interna che supporta l'infrastruttura Entity Framework Core e non è soggetta agli stessi standard di compatibilità delle API pubbliche. Può essere modificato o rimosso senza preavviso in alcuna versione. È consigliabile usarlo direttamente nel codice con estrema cautela e sapere che questa operazione può causare errori dell'applicazione durante l'aggiornamento a una nuova versione Entity Framework Core.

PruneValues(ValuesExpression)

Elimina un ValuesExpressionoggetto , rimuovendo le colonne al suo interno a cui non viene fatto riferimento. Questa operazione rimuove attualmente la colonna che viene aggiunta per mantenere l'ordinamento _ord , nei casi in cui tale ordinamento non è effettivamente necessario.

VisitExtension(Expression)

Visitatore che elabora un albero SQL e elimina parti che non sono necessarie.

Questo tipo viene in genere usato dai provider di database (e da altre estensioni). In genere non viene usato nel codice dell'applicazione.

Si applica a