Compartilhar via


Exibições de banco de dados na API REST

As exibições têm suporte como alternativas para tabelas no DAB (Construtor de API de Dados). Uma exibição pode ser exposta por meio de endereços REST com a configuração mínima necessária.

Configuração

Para expor uma visualização:

  • Defina source.type como "view"
  • Definir source.object como o nome de exibição totalmente qualificado
  • Para identificar uma linha exclusivamente, defina key-fields
  • Conceda permissão usando a ação "read" (e, opcionalmente, "create", "update", "delete" se a vista for atualizável).

Exemplo da CLI

dab add BookDetail \
  --source dbo.vw_books_details \
  --source.type "view" \
  --fields.name "id" \
  --fields.primary-key "true" \
  --permissions "anonymous:read"

Exemplo de configuração

"BookDetail": {
  "source": {
    "type": "view",
    "object": "dbo.vw_books_details",
    "key-fields": [ "id" ]
  },
  "permissions": [
    {
      "role": "anonymous",
      "actions": [ "read" ]
    }
  ]
}

Comportamento REST

  • Dá suporte a todos os verbos REST: GET, , POST, PUT, , PATCHDELETE
  • O comportamento padrão é idêntico ao das entidades respaldadas por tabelas
  • As operações só serão bem-sucedidas se o modo de exibição for atualizável e as permissões apropriadas forem definidas

Solicitação de exemplo

GET /api/BookDetail/id/42

Retorna a linha de vw_books_details com id = 42.

Permissões

  • Usar a ação read para exibições somente leitura
  • Use create, updatee delete somente se o modo de exibição for atualizável

Limitações

  • key-fields são necessários
  • Visualizações não suportam relacionamentos
  • Há suporte para paginação, filtragem e classificação se a exibição se comportar como uma tabela