Modelo de extensibilidade do Microsoft Dataverse

Concluído

Entender a arquitetura subjacente do Microsoft Dataverse é algo importante para estender seus recursos. Como o Dataverse é uma plataforma de software como serviço, a maioria desses detalhes, como o armazenamento de dados subjacente, é abstraído com êxito de nós, como desenvolvedores, e podemos nos concentrar em itens mais interessantes, como a criação de lógica de negócios personalizada e a integração com outros aplicativos. O gráfico ilustra esses componentes subjacentes. As seções realçadas mostram áreas em que os desenvolvedores podem estender os aplicativos baseados em modelo do Power Apps usando código.

Observação

Esta unidade se destina apenas a ser uma visão de alto nível da arquitetura do Dataverse. Para obter uma análise mais aprofundada do Dataverse, consulte o Guia do desenvolvedor do Dataverse.

Metadados e conscientização da solução

O Microsoft Dataverse fornece uma arquitetura orientada por metadados que dá flexibilidade para criar tabelas personalizadas e estender tabelas existentes. Usando essa abordagem, podemos transportar facilmente nossas personalizações entre ambientes usando soluções do Dataverse.

Quando você cria uma tabela personalizada, os metadados sobre essa tabela, suas colunas e relacionamentos com outras tabelas e componentes da interface do usuário (como formulários e exibições) são armazenados como metadados no ambiente do Dataverse em uma solução.

O Dataverse também expõe um ponto de extremidade RESTful OData V4, conhecido como API Web do Dataverse, que pode ser aproveitado para exibir e manipular metadados em um ambiente do Dataverse. Um mecanismo comum para navegar pelos metadados de sua solução é aproveitar o Navegador dos Metadados. A Microsoft o fornece como uma solução que você pode instalar em seu aplicativo. Os links atuais podem ser encontrados em Procurar definições de tabela em seu ambiente. Essa ferramenta pode ser instalada em qualquer Power App baseado em modelo. Além disso, o XrmToolbox tem uma ferramenta de navegador de metadados da comunidade disponível.

Assemblies do .NET (plug-ins)

Os plug-ins do Dataverse são classes de código gerenciado registradas para serem executadas quando ocorrem eventos específicos do Dataverse. Quando o evento ocorre, eles passam por um pipeline de execução do plug-in que consiste em três estágios: Pré-Validação, Pré-Operação e PostOperation. Ao registrar um plug-in, escolha em qual estágio seu código deverá ser executado. O estágio que você deve escolher depende da finalidade da extensão. Você não precisa aplicar toda a sua lógica de negócios em uma única etapa.

Você pode configurar plug-ins para serem executados de forma síncrona ou assíncrona. Os plug-ins síncronos são executados imediatamente de acordo com o estágio e a ordem de execução; toda a operação aguardará até que sejam concluídos. Os plug-ins assíncronos são executados por meio de um trabalho do sistema após a conclusão da operação e só podem ser registrados no estágio PostOperation.

Também é possível desenvolver e registrar plug-ins para implementar a lógica para mensagens da API personalizada do Dataverse.

APIs

As APIs do Dataverse fornecem uma interface programática para aplicativos e serviços acessarem dados de negócios, informações da organização e metadados armazenados no Dataverse. Os desenvolvedores podem usar uma API Web RESTful OData ou classes .NET digitadas por meio do SDK para assemblies .NET, dependendo de como precisam consumir a API. A API Web é a mais amplamente aplicável, pois requer apenas a capacidade de fazer solicitações HTTP e consumir respostas HTTP. Você deve usar o SDK para .NET para desenvolvimento de plug-in do Dataverse. Para a maioria dos outros usos, você pode escolher o estilo de API que melhor se adapta ao que está criando.