Compartilhar via


Criar consultas com QueryExpression

 

Publicado: janeiro de 2017

Aplicável a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

No Microsoft Dynamics 365 (online e local), você pode usar a classe QueryExpression de forma programática para criar uma consulta contendo filtros de dados e critérios de pesquisa que definem o escopo de uma pesquisa da do banco de dados. Uma expressão de consulta é usada para pesquisas de um objeto. Por exemplo, você poderá criar uma pesquisa para retornar todas as contas que correspondam determinados critérios de pesquisa. A classe QueryBase é a classe base para expressões de consulta. Há duas classes derivadas: QueryExpression e QueryByAttribute. A classe QueryExpression oferece suporte a consultas complexas. A classe QueryByAttribute é um simples meio de pesquisar por entidades onde os atributos correspondem aos valores especificados.

Expressões de consulta são usadas nos métodos que recuperam mais de um registro, como o método IOrganizationService.RetrieveMultiple, em mensagens que realizam uma operação em um conjunto de resultados especificado por uma expressão de consulta, como BulkDeleteRequest e quando a ID de um determinado registro não seja conhecido.

Além disso, há um novo atributo na entidade da organização, Organization.QuickFindRecordLimitEnabled. Quando este atributo Boolean for true, um limite foi imposto nas consultas de localização rápida. Se o usuário fornece critérios de pesquisa na localização rápida que não é seletivo o suficiente, o sistema detecta e para a pesquisa. Isso oferece suporte a uma forma mais rápida de localização e pode fazer uma grande diferença em desempenho.

Aviso

Não recupera todos os atributos em uma consulta do efeito negativo no desempenho. Isso é especialmente verdadeiro se a consulta é usada como um parâmetro para uma solicitação de atualização. Em uma atualização, se todos os atributos estão incluídos, isso definirá todos os valores de campo, mesmo se não forem alterados, e dispara frequentemente atualizações em cascata para registros secundários.

Há duas maneiras de criar consultas adicionais para recuperar registros do Microsoft Dynamics 365. O FetchXML, a linguagem de consulta privada do Microsoft Dynamics 365, pode ser usado para executar algumas consultas utilizando consultas baseadas em XML. Para obter mais informações, consulte Criar consultas com FetchXML. Você também pode usar o .NET LINQ (Language-Integrated Query) para redigir consultas.Para obter mais informações:Compilação de consultas com o LINQ (Language-Integrated Query do .NET).

Para salvar uma consulta, é possível convertê-la para FetchXML usando QueryExpressionToFetchXmlRequest e salvar como uma exibição salva usando a entidade userquery.

Nesta Seção

Usar a classe de QueryByAttribute

Use a classe QueryExpression

Usar a classe ColumnSet

Usar a classe ConditionExpression

Use a classe FilterExpression

Usar uma junção externa à esquerda em QueryExpression para consultar registros “não incluídos”

Testar para um valor nulo

Grandes conjuntos de resultados em páginas com o QueryExpression

Exemplo: Recuperar com o relacionamento um-para-muitos

Exemplo: Recuperar um múltiplo com a classe QueryByAttribute

Exemplo: Recuperar um múltiplo com a classe QueryExpression

Exemplo: Usar o QueryExpression com um cookie de paginação

Referência

QueryBase

QueryExpression

QueryByAttribute

RetrieveMultiple

ColumnSet

ConditionExpression

FilterExpression

PagingCookie

Confira Também

Exemplo: Consultas de conversão entre o Fetch e o QueryExpression

Microsoft Dynamics 365

© 2017 Microsoft. Todos os direitos reservados. Direitos autorais