Lingua

JsonQueryExpression Classe

Definizione

Espressione che rappresenta un'entità o una raccolta di entità mappate a una colonna JSON e al percorso per accedervi.

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 JsonQueryExpression : System.Linq.Expressions.Expression, Microsoft.EntityFrameworkCore.Query.IPrintableExpression
public class JsonQueryExpression : System.Linq.Expressions.Expression, Microsoft.EntityFrameworkCore.Query.IPrintableExpression
[<System.Runtime.CompilerServices.Nullable(0)>]
type JsonQueryExpression = class
    inherit Expression
    interface IPrintableExpression
type JsonQueryExpression = class
    inherit Expression
    interface IPrintableExpression
Public Class JsonQueryExpression
Inherits Expression
Implements IPrintableExpression
Ereditarietà
JsonQueryExpression
Attributi
Implementazioni

Costruttori

Nome Descrizione
JsonQueryExpression(IEntityType, ColumnExpression, IReadOnlyDictionary<IProperty,ColumnExpression>, Type, Boolean)

Crea una nuova istanza della JsonQueryExpression classe .

JsonQueryExpression(ITypeBase, ColumnExpression, IReadOnlyDictionary<IProperty,ColumnExpression>, IReadOnlyList<PathSegment>, Type, Boolean, Boolean)

Crea una nuova istanza della JsonQueryExpression classe .

JsonQueryExpression(ITypeBase, ColumnExpression, IReadOnlyDictionary<IProperty,ColumnExpression>, Type, Boolean)

Crea una nuova istanza della JsonQueryExpression classe .

Proprietà

Nome Descrizione
EntityType

Tipo di entità rappresentato da questa espressione.

IsCollection

Indica se questa espressione rappresenta una raccolta.

IsNullable

Indica se questa espressione è nullable.

JsonColumn

Colonna contenente il valore JSON.

KeyPropertyMap

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.

NodeType

Espressione che rappresenta un'entità o una raccolta di entità mappate a una colonna JSON e al percorso per accedervi.

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

Path

Elenco di segmenti di percorso che portano all'entità dalla radice del codice JSON archiviato nella colonna.

StructuralType

Tipo strutturale rappresentato da questa espressione.

Type

Espressione che rappresenta un'entità o una raccolta di entità mappate a una colonna JSON e al percorso per accedervi.

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

Metodi

Nome Descrizione
BindCollectionElement(SqlExpression)

Associa l'accesso a un elemento della raccolta con questa espressione di query JSON per ottenere la rappresentazione SQL.

BindNavigation(INavigation)

Associa una navigazione con questa espressione di query JSON per ottenere la rappresentazione SQL.

BindProperty(IProperty)

Associa una proprietà a questa espressione di query JSON per ottenere la rappresentazione SQL.

BindStructuralProperty(IPropertyBase)

Associa una proprietà di navigazione o complessa a questa espressione di query JSON per ottenere la rappresentazione SQL.

Equals(Object)

Espressione che rappresenta un'entità o una raccolta di entità mappate a una colonna JSON e al percorso per accedervi.

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

FindJsonElement(IPropertyBase)

Trova l'oggetto IRelationalJsonElement per la proprietà,la navigazione/la proprietà complessa specificata all'interno della colonna JSON a cui fa riferimento questa espressione associando JsonColumnl'oggetto sottostante ContainingColumnColumn a o restituisce null se non esiste alcun elemento di questo tipo (incluso quando JsonColumn non è presente alcun elemento sottostanteColumn, ad esempio per le espansioni JSON sintetiche su OPENJSON/json_each o per le proprietà iterate, ad esempio chiavi shadow che non hanno rappresentazione JSON).

GetHashCode()

Espressione che rappresenta un'entità o una raccolta di entità mappate a una colonna JSON e al percorso per accedervi.

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

GetJsonElement(IPropertyBase)

Trova l'oggetto IRelationalJsonElement per la proprietà specificata, la struttura di spostamento o la struttura complessa all'interno della colonna JSON a cui fa riferimento questa espressione associando JsonColumnl'oggetto sottostante ColumnContainingColumna . In questo modo si disambiguano gli scenari di suddivisione delle entità, TPT e TPC in cui la stessa proprietà ha più mapping di elementi JSON, uno per tabella concreta. PropertyName può essere null per le chiavi shadow che non hanno rappresentazione JSON. I chiamanti che esecutono su GetProperties() devono gestire tale caso e ignorarli.

MakeNullable()

Rende nullable questa espressione di query JSON.

Print(ExpressionPrinter)

Crea una rappresentazione di stringa stampabile dell'espressione specificata utilizzando ExpressionPrinter.

Update(ColumnExpression, IReadOnlyDictionary<IProperty,ColumnExpression>)

Crea una nuova espressione simile a questa, ma utilizzando gli elementi figlio forniti. Se tutti gli elementi figlio sono uguali, restituirà questa espressione.

VisitChildren(ExpressionVisitor)

Espressione che rappresenta un'entità o una raccolta di entità mappate a una colonna JSON e al percorso per accedervi.

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