Idioma

JsonQueryExpression Classe

Definição

Uma expressão que representa uma entidade ou uma coleção de entidades mapeada para uma coluna JSON e o caminho para acessá-la.

Esse tipo normalmente é usado por provedores de banco de dados (e outras extensões). Geralmente, ele não é usado no código do aplicativo.

[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
Herança
JsonQueryExpression
Atributos
Implementações

Construtores

Nome Descrição
JsonQueryExpression(IEntityType, ColumnExpression, IReadOnlyDictionary<IProperty,ColumnExpression>, Type, Boolean)

Cria uma nova instância da JsonQueryExpression classe.

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

Cria uma nova instância da JsonQueryExpression classe.

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

Cria uma nova instância da JsonQueryExpression classe.

Propriedades

Nome Descrição
EntityType

O tipo de entidade que está sendo representado por essa expressão.

IsCollection

Se essa expressão representa uma coleção.

IsNullable

Se essa expressão é anulável.

JsonColumn

A coluna que contém o valor JSON.

KeyPropertyMap

Essa é uma API interna que dá suporte à infraestrutura de Entity Framework Core e não está sujeita aos mesmos padrões de compatibilidade que as APIs públicas. Ele pode ser alterado ou removido sem aviso prévio em qualquer versão. Você só deve usá-lo diretamente em seu código com extrema cautela e saber que fazer isso pode resultar em falhas de aplicativo ao atualizar para uma nova versão Entity Framework Core.

NodeType

Uma expressão que representa uma entidade ou uma coleção de entidades mapeada para uma coluna JSON e o caminho para acessá-la.

Esse tipo normalmente é usado por provedores de banco de dados (e outras extensões). Geralmente, ele não é usado no código do aplicativo.

Path

A lista de segmentos de caminho que levam à entidade da raiz do JSON armazenado na coluna.

StructuralType

O tipo estrutural representado por essa expressão.

Type

Uma expressão que representa uma entidade ou uma coleção de entidades mapeada para uma coluna JSON e o caminho para acessá-la.

Esse tipo normalmente é usado por provedores de banco de dados (e outras extensões). Geralmente, ele não é usado no código do aplicativo.

Métodos

Nome Descrição
BindCollectionElement(SqlExpression)

Associa um acesso de elemento de coleção a essa expressão de consulta JSON para obter a representação sql.

BindNavigation(INavigation)

Associa uma navegação a essa expressão de consulta JSON para obter a representação sql.

BindProperty(IProperty)

Associa uma propriedade a essa expressão de consulta JSON para obter a representação SQL.

BindStructuralProperty(IPropertyBase)

Associa uma navegação ou uma propriedade complexa a essa expressão de consulta JSON para obter a representação sql.

Equals(Object)

Uma expressão que representa uma entidade ou uma coleção de entidades mapeada para uma coluna JSON e o caminho para acessá-la.

Esse tipo normalmente é usado por provedores de banco de dados (e outras extensões). Geralmente, ele não é usado no código do aplicativo.

FindJsonElement(IPropertyBase)

Localiza a IRelationalJsonElement propriedade/navegação/propriedade complexa fornecida dentro da coluna JSON referenciada por essa expressão, correspondendo JsonColumnColumn a 's subjacentes contra ContainingColumn, ou retorna null se nenhum elemento desse tipo existe (incluindo quando JsonColumn não tem nenhuma representação ColumnJSON subjacente, por exemplo, para expansões JSON sintéticas em OPENJSON/json_each ou para propriedades iteradas, como chaves de sombra que não têm representação JSON).

GetHashCode()

Uma expressão que representa uma entidade ou uma coleção de entidades mapeada para uma coluna JSON e o caminho para acessá-la.

Esse tipo normalmente é usado por provedores de banco de dados (e outras extensões). Geralmente, ele não é usado no código do aplicativo.

GetJsonElement(IPropertyBase)

Localiza a IRelationalJsonElement propriedade de determinada propriedade/navegação/complexo dentro da coluna JSON referenciada por essa expressão, correspondendo JsonColumnColumn a 's subjacentes em relação ContainingColumna . Isso desambigua os cenários de divisão de entidade, TPT e TPC em que a mesma propriedade tem vários mapeamentos de elemento JSON — um por tabela concreta. PropertyName pode ser null para chaves de sombra que não têm representação JSON; os chamadores que iteram GetProperties() devem lidar com esse caso e ignorá-los.

MakeNullable()

Torna essa expressão de consulta JSON anulável.

Print(ExpressionPrinter)

Cria uma representação de cadeia de caracteres imprimível da expressão fornecida usando ExpressionPrinter.

Update(ColumnExpression, IReadOnlyDictionary<IProperty,ColumnExpression>)

Cria uma nova expressão semelhante a esta, mas usando os filhos fornecidos. Se todas as crianças forem iguais, ela retornará essa expressão.

VisitChildren(ExpressionVisitor)

Uma expressão que representa uma entidade ou uma coleção de entidades mapeada para uma coluna JSON e o caminho para acessá-la.

Esse tipo normalmente é usado por provedores de banco de dados (e outras extensões). Geralmente, ele não é usado no código do aplicativo.

Aplica-se a