Język

JsonQueryExpression Klasa

Definicja

Wyrażenie reprezentujące jednostkę lub kolekcję jednostek zamapowanych na kolumnę JSON i ścieżkę, aby uzyskać do niej dostęp.

Ten typ jest zwykle używany przez dostawców baz danych (i innych rozszerzeń). Zwykle nie jest używany w kodzie aplikacji.

[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
Dziedziczenie
JsonQueryExpression
Atrybuty
Implementuje

Konstruktory

Nazwisko Opis
JsonQueryExpression(IEntityType, ColumnExpression, IReadOnlyDictionary<IProperty,ColumnExpression>, Type, Boolean)

Tworzy nowe wystąpienie JsonQueryExpression klasy.

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

Tworzy nowe wystąpienie JsonQueryExpression klasy.

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

Tworzy nowe wystąpienie JsonQueryExpression klasy.

Właściwości

Nazwisko Opis
EntityType

Typ jednostki reprezentowany przez to wyrażenie.

IsCollection

Czy to wyrażenie reprezentuje kolekcję.

IsNullable

Czy to wyrażenie jest dopuszczane do wartości null.

JsonColumn

Kolumna zawierająca wartość JSON.

KeyPropertyMap

Jest to wewnętrzny interfejs API, który obsługuje infrastrukturę Entity Framework Core i nie podlega tym samym standardom zgodności co publiczne interfejsy API. Można go zmienić lub usunąć bez powiadomienia w jakiejkolwiek wersji. Należy używać go bezpośrednio w kodzie z wyjątkową ostrożnością i wiedząc, że może to spowodować błędy aplikacji podczas aktualizowania do nowej wersji Entity Framework Core.

NodeType

Wyrażenie reprezentujące jednostkę lub kolekcję jednostek zamapowanych na kolumnę JSON i ścieżkę, aby uzyskać do niej dostęp.

Ten typ jest zwykle używany przez dostawców baz danych (i innych rozszerzeń). Zwykle nie jest używany w kodzie aplikacji.

Path

Lista segmentów ścieżek prowadzących do jednostki z katalogu głównego pliku JSON przechowywanego w kolumnie .

StructuralType

Typ strukturalny reprezentowany przez to wyrażenie.

Type

Wyrażenie reprezentujące jednostkę lub kolekcję jednostek zamapowanych na kolumnę JSON i ścieżkę, aby uzyskać do niej dostęp.

Ten typ jest zwykle używany przez dostawców baz danych (i innych rozszerzeń). Zwykle nie jest używany w kodzie aplikacji.

Metody

Nazwisko Opis
BindCollectionElement(SqlExpression)

Tworzy powiązanie dostępu do elementu kolekcji za pomocą tego wyrażenia zapytania JSON w celu uzyskania reprezentacji SQL.

BindNavigation(INavigation)

Tworzy powiązanie nawigacji z tym wyrażeniem zapytania JSON w celu uzyskania reprezentacji SQL.

BindProperty(IProperty)

Tworzy powiązanie właściwości z tym wyrażeniem zapytania JSON w celu uzyskania reprezentacji SQL.

BindStructuralProperty(IPropertyBase)

Tworzy powiązanie nawigacji lub złożonej właściwości z tym wyrażeniem zapytania JSON w celu uzyskania reprezentacji SQL.

Equals(Object)

Wyrażenie reprezentujące jednostkę lub kolekcję jednostek zamapowanych na kolumnę JSON i ścieżkę, aby uzyskać do niej dostęp.

Ten typ jest zwykle używany przez dostawców baz danych (i innych rozszerzeń). Zwykle nie jest używany w kodzie aplikacji.

FindJsonElement(IPropertyBase)

IRelationalJsonElement Znajduje właściwość dla danej właściwości/nawigacji/złożonej w kolumnie JSON przywoływanej przez to wyrażenie przez dopasowanie JsonColumnColumnContainingColumnwartości bazowej względem elementu lub zwraca null wartość , jeśli taki element nie istnieje (w tym, gdy JsonColumn nie ma żadnej podstawowej Columnreprezentacji, np. dla syntetycznych rozszerzeń JSON za pośrednictwem formatu OPENJSON/json_each lub dla właściwości iteracji, takich jak klucze w tle, które nie mają reprezentacji JSON).

GetHashCode()

Wyrażenie reprezentujące jednostkę lub kolekcję jednostek zamapowanych na kolumnę JSON i ścieżkę, aby uzyskać do niej dostęp.

Ten typ jest zwykle używany przez dostawców baz danych (i innych rozszerzeń). Zwykle nie jest używany w kodzie aplikacji.

GetJsonElement(IPropertyBase)

IRelationalJsonElement Znajduje właściwość dla danej właściwości/nawigacji/złożonej w kolumnie JSON przywoływanej przez to wyrażenie, pasując JsonColumndo elementu bazowego Column względem ContainingColumnelementu . To rozbicie jednostek, scenariusze TPT i TPC, w których ta sama właściwość ma wiele mapowań elementów JSON — jeden na konkretną tabelę. PropertyName może dotyczyć null kluczy w tle, które nie mają reprezentacji w formacie JSON; iteratory GetProperties() wywołujące muszą obsługiwać ten przypadek i pomijać je.

MakeNullable()

Sprawia, że to wyrażenie zapytania JSON jest dopuszczane do wartości null.

Print(ExpressionPrinter)

Tworzy drukowalną reprezentację ciągu danego wyrażenia przy użyciu polecenia ExpressionPrinter.

Update(ColumnExpression, IReadOnlyDictionary<IProperty,ColumnExpression>)

Tworzy nowe wyrażenie podobne do tego, ale przy użyciu dostarczonych elementów podrzędnych. Jeśli wszystkie elementy podrzędne są takie same, zwróci to wyrażenie.

VisitChildren(ExpressionVisitor)

Wyrażenie reprezentujące jednostkę lub kolekcję jednostek zamapowanych na kolumnę JSON i ścieżkę, aby uzyskać do niej dostęp.

Ten typ jest zwykle używany przez dostawców baz danych (i innych rozszerzeń). Zwykle nie jest używany w kodzie aplikacji.

Dotyczy