EnableQueryAttribute Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Essa classe define um atributo que pode ser aplicado a uma ação para habilitar consultas usando a sintaxe de consulta OData. Para evitar o processamento de consultas inesperadas ou mal-intencionadas, use as configurações de validação em EnableQueryAttribute para validar as consultas de entrada. Para obter mais informações, visite http://go.microsoft.com/fwlink/?LinkId=279712.
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=false, Inherited=true)]
public class EnableQueryAttribute : System.Web.Http.Filters.ActionFilterAttribute
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=false, Inherited=true)]
public class EnableQueryAttribute : Microsoft.AspNetCore.Mvc.Filters.ActionFilterAttribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=false, Inherited=true)>]
type EnableQueryAttribute = class
inherit ActionFilterAttribute
Public Class EnableQueryAttribute
Inherits ActionFilterAttribute
- Herança
-
System.Web.Http.Filters.ActionFilterAttributeEnableQueryAttribute
- Herança
-
EnableQueryAttribute
- Atributos
Construtores
EnableQueryAttribute() |
Permite que uma ação do controlador suporte os parâmetros de consulta OData. |
Propriedades
AllowedArithmeticOperators |
Obtém ou define um valor que representa uma lista de operadores aritméticos permitidos incluindo 'add', 'sub', 'mul', 'div', 'mod'. |
AllowedFunctions |
Obtém ou define um valor que representa uma lista de funções permitidas usadas na consulta $filter. Entre as funções suportadas estão as seguintes: |
AllowedLogicalOperators |
Obtém ou define um valor que representa uma lista de Operadores lógicos permitidos, tais como 'eq', 'ne', 'gt', 'ge', 'lt', 'le', 'and', 'or', 'not'. |
AllowedOrderByProperties |
Obtém ou define uma cadeia de caracteres com lista separada por vírgulas de nomes de propriedade. O resultado consultável pode ser ordenado apenas pelas propriedades definidas nesta lista. Observação: por padrão essa cadeia de caracteres é nula, o que significa que ela pode ser ordenada por qualquer propriedade. Por exemplo, definir esse valor como cadeia de caracteres nula ou vazia significa que permitimos a ordenação do resultado que pode ser consultado por quaisquer propriedades. Definir esse valor como "Name" significa que só é permitido ordenar o resultado consultável pela propriedade Nome. |
AllowedQueryOptions |
Obtém ou define os parâmetros de consulta que são permitidos nas consultas. |
EnableConstantParameterization |
Obtém ou define um valor indicando se as constantes devem ser parametrizadas. Parametrizar constantes resultaria em um melhor desempenho com o Entity Framework. |
EnableCorrelatedSubqueryBuffering |
Obtém ou define um valor que indica se as consultas com navegação expandida devem ser formuladas para incentivar que os resultados de subconsulta correlacionados sejam armazenados em buffer. Os resultados da subconsulta correlacionada de buffer podem reduzir o número de consultas de N + 1 para 2 armazenando em buffer os resultados da subconsulta. |
EnsureStableOrdering |
Obtém ou define um valor que indica se a composição de consultas deve alterar a consulta original quando necessário para garantir uma ordem de classificação estável. |
HandleNullPropagation |
Obtém ou define um valor indicando como a propagação nula deve ser tratada durante a composição de consultas. |
HandleReferenceNavigationPropertyExpandFilter |
Honre $filter dentro de $expand da propriedade de navegação não coleção. A propriedade expandida só é preenchida quando o filtro é avaliado como true. Essa configuração é falsa por padrão. |
MaxAnyAllExpressionDepth |
Obtém ou define a profundidade máxima dos elementos Any ou All aninhados dentro desta consulta. Este limite ajuda a evitar ataques de negação de serviço. |
MaxExpansionDepth |
Obtém ou define a profundidade máx. de expansão para a opção de consulta $expand. Para desativar a verificação de profundidade máxima de expansão, defina esta propriedade como 0. |
MaxNodeCount |
Obtém ou define o número máximo de nós dentro da árvore de sintaxe $filter. |
MaxOrderByNodeCount |
Obtém ou define o número máximo de expressões que podem estar presentes no $orderby. |
MaxSkip |
Obtém ou define o valor máximo de $skip que o cliente pode solicitar. |
MaxTop |
Obtém ou define o valor máximo de $top que o cliente pode solicitar. |
PageSize |
Obtém ou define o número máximo de resultados de consulta a ser enviado de volta aos clientes. |
Métodos
ApplyQuery(IQueryable, ODataQueryOptions) |
Aplica a consulta ao IQueryable determinado com base na consulta de entrada das configurações de URI e consulta. Por padrão, a implementação suporta $top, $skip, $orderby e $filter. Substitua este método para realizar uma composição de consultas adicional da consulta. |
ApplyQuery(Object, ODataQueryOptions) |
Aplica a consulta à entidade determinada com base na consulta de entrada das configurações de URI e de consulta. |
CreateErrorResponse(String, Exception) |
Crie uma resposta de erro. |
GetModel(Type, HttpRequest, ActionDescriptor) |
Obtém o modelo EDM para o tipo e a solicitação fornecidos. Substitua esse método para personalizar o modelo EDM usado para consulta. |
GetModel(Type, HttpRequestMessage, HttpActionDescriptor) |
Obtém o modelo EDM para o tipo e a solicitação determinados. Substitua este método para personalizar o modelo EDM usado para a consulta. |
OnActionExecuted(ActionExecutedContext) |
Realiza a composição de consultas após a ação ser executada. Primeiro tenta recuperar o IQueryable da mensagem de resposta retornada. Em seguida, ele valida a consulta do URI com base nas configurações de validação em EnableQueryAttribute. Finalmente, aplica a consulta apropriadamente e a redefine na mensagem de resposta. |
OnActionExecuted(HttpActionExecutedContext) |
Realiza a composição de consultas após a ação ser executada. Primeiro tenta recuperar o IQueryable da mensagem de resposta retornada. Em seguida, ele valida a consulta do URI com base nas configurações de validação em EnableQueryAttribute. Finalmente, aplica a consulta apropriadamente e a redefine na mensagem de resposta. |
OnActionExecuting(ActionExecutingContext) |
Essa classe define um atributo que pode ser aplicado a uma ação para habilitar consultas usando a sintaxe de consulta OData. Para evitar o processamento de consultas inesperadas ou mal-intencionadas, use as configurações de validação em EnableQueryAttribute para validar as consultas de entrada. Para obter mais informações, visite http://go.microsoft.com/fwlink/?LinkId=279712. |
ValidateQuery(HttpRequest, ODataQueryOptions) |
Valida a consulta OData na solicitação de entrada. Por padrão, a implementação gera uma exceção se a consulta contiver parâmetros de consulta não suportados. Substitui este método para realizar uma validação adicional da consulta. |
ValidateQuery(HttpRequestMessage, ODataQueryOptions) |
Valida a consulta OData na solicitação de entrada. Por padrão, a implementação gera uma exceção se a consulta contiver parâmetros de consulta não suportados. Substitui este método para realizar uma validação adicional da consulta. |