Este artigo fornece um detalhamento da estrutura de definição para itens GraphQLApi.
Peças de definição
Esta tabela lista as partes de definição do GraphQLApi.
| Caminho da parte de definição |
tipo |
Obrigatório |
Descrição |
.platform |
PlatformDetails (JSON) |
falso |
Descreve detalhes comuns do item |
graphql-definition.json |
GraphQLDefinition (JSON) |
verdadeiro |
Descreve a configuração geral e de fonte de dados da API para GraphQL |
GraphQLDefinition
| Nome |
Tipo |
Descrição |
| $schema |
Cordão |
URL para especificação de esquema |
| Fontes de dados |
Fonte[] |
Lista de fontes de dados associadas à API para GraphQL |
Fonte
| Nome |
Tipo |
Descrição |
| sourceItemId |
Guia |
ID do item de origem |
| sourceWorkspaceId |
Guia |
ID do espaço de trabalho que contém o item de origem |
| connectionId |
Guia |
ID da conexão usada para o item de origem |
| Tipo de fonte |
Tipo de fonte |
Tipo de item de origem |
| objetos |
SourceObject[] |
Lista de objetos no item de origem que são expostos usando a API GraphQL |
SourceType (enum)
| Nome |
Descrição |
| SqlAnalyticsEndpoint |
Ponto de extremidade do SQL Analytics |
| Armazém |
Armazém |
| SqlDbNative |
Banco de dados SQL |
| AzureSql |
Base de Dados SQL do Azure |
SourceObject
| Nome |
Tipo |
Descrição |
| graphqlType |
Cordão |
Nome do tipo GraphQL a ser usado para o objeto no item de origem |
| sourceObject |
Cordão |
Nome do objeto no item de origem exposto pela API GraphQL |
| Tipo de Objeto de Origem |
SourceObjectType |
Tipo de objeto no item de origem |
| ações |
<ActionType, ActionValue> |
Dicionário de tipo de ação para valor de ação que indica consultas e mutações com seu status de ativação |
| fieldMapeamentos |
<String, String> |
Dicionário de campos no objeto de origem para campos GraphQL |
| Relacionamentos |
Relacionamento[] |
Lista de relações configuradas a partir do objeto de origem |
| IsStoredProcedureQueryNode |
Booleano |
Tipo de operação GraphQL para expor o procedimento armazenado. Verdadeiro - Consulta, Falso - Mutação. |
SourceObjectType (enum)
| Nome |
Descrição |
| Tabela |
Tabela de banco de dados |
| Visualizar |
Visualização do banco de dados |
| Procedimento Armazenado |
Procedimento armazenado do banco de dados |
ActionType (enum)
| Nome |
Descrição |
| Pergunta |
Consulta no objeto de origem |
| Query_by_pk |
Consulta por chave primária no objeto de origem |
| Criar |
Criar mutação no objeto de origem |
| Atualização |
Atualizar mutação no objeto de origem |
| Suprimir |
Excluir mutação no objeto de origem |
| Executar |
Executar consulta ou mutação no procedimento armazenado |
ActionValue (enum)
| Nome |
Descrição |
| Ativado(a) |
Ativar consulta ou mutação |
| Desabilitado |
Desativar consulta ou mutação |
Relacionamento
| Nome |
Tipo |
Descrição |
| campo |
Cordão |
Nome do campo GraphQL a ser usado para a relação no tipo GraphQL |
| cardinalidade |
RelacionamentoCardinalidade |
Cardinalidade para a relação |
| targetObject |
Cordão |
Objeto de destino para a relação |
| sourceFields |
Cadeia[] |
Lista de campos no objeto de origem usado para a relação |
| targetFields |
Cadeia[] |
Lista de campos no objeto de destino usado para a relação |
| linkingObject |
Cordão |
Vinculando objeto para relações muitos-para-muitos entre objetos de origem e de destino |
| linkingSourceFields |
Cadeia[] |
Lista de campos no objeto de vinculação para a relação do objeto de origem |
| vinculaçãoTargetFields |
Cadeia[] |
Lista de campos no objeto de vinculação para a relação com o objeto de destino |
RelacionamentoCardinalidade (enum)
| Nome |
Descrição |
| MuitosToOne |
Relação muitos-para-um |
| OneToMany |
Relação um-para-muitos |
| OneToOne |
Relação um-para-um |
| MuitosToMuitos |
Relação muitos-para-muitos |
Exemplo de GraphQLDefinition
{
"$schema": "https://developer.microsoft.com/json-schemas/fabric/item/graphqlApi/definition/1.0.0/schema.json",
"datasources": [
{
"objects": [
{
"actions": {
"Query": "Enabled"
},
"fieldMappings": {
"LastName": "LastName",
"Name": "Name"
},
"graphqlType": "Customers",
"relationships": [],
"sourceObject": "model.Customers",
"sourceObjectType": "View"
}
],
"sourceItemId": "c54cd4ce-cbaa-4fc5-bcc8-121f2a3e0c4c",
"sourceType": "Warehouse",
"sourceWorkspaceId": "c2231263-b81e-4dd2-a69b-41eca8c93584"
},
{
"connectionId": "daa5dc10-6eae-4b19-af5f-da8db84c51c1",
"objects": [
{
"actions": {
"Query": "Enabled"
},
"fieldMappings": {
"id": "id",
"publisher_id": "publisher_id",
"title": "title"
},
"graphqlType": "publishers",
"relationships": [],
"sourceObject": "dbo.publishers_view",
"sourceObjectType": "View"
},
{
"actions": {
"Query": "Enabled",
"Query_by_pk": "Enabled",
"Create": "Enabled",
"Update": "Enabled",
"Delete": "Disabled"
},
"fieldMappings": {
"id": "id",
"title": "title"
},
"graphqlType": "books",
"relationships": [],
"sourceObject": "dbo.books",
"sourceObjectType": "Table"
}
],
"sourceItemId": "daa5dc10-6eae-4b19-af5f-da8db84c51c1",
"sourceType": "AzureSql",
"sourceWorkspaceId": "00000000-0000-0000-0000-000000000000"
}
]
}