从源代码生成和运行数据 API 生成器

数据 API 生成器 (DAB) 是 GitHub 上托管的开源项目。 可以随时下载源代码、修改代码,直接从源运行项目。 本指南包括直接从其源代码生成项目所需的所有步骤。

先决条件

分叉和克隆存储库

首先创建自己的 GitHub 存储库分支 azure/data-api-builder 。 通过此分支,可以保留自己的更改。 如果您选择这样做,您总是可以打开拉取请求,并向上游存储库建议更改。

  1. 请导航至 https://github.com/azure/data-api-builder/fork

  2. 在自己的帐户或组织中创建存储库分支。 等待分叉操作完成后再继续。

  3. 打开新的终端。

  4. 克隆分叉。

    git clone https://github.com/<your-username>/data-api-builder.git
    

    小窍门

    或者,可以将分支或原始存储库作为 GitHub Codespace 打开。

  5. src/Azure.DataApiBuilder.sln生成解决方案。

    dotnet build src/Azure.DataApiBuilder.sln
    

运行引擎

Azure.DataApiBuilder 解决方案包括多个项目。 要从源代码运行该工具,请运行 Azure.DataApiBuilder.Service 项目,并传入一个配置文件。

  1. 在根目录中,创建一个新文件,名为dab-config.json

    小窍门

    .gitignore 文件会自动忽略任何 DAB 配置文件。

  2. 将以下内容添加到配置文件。

    {
      "$schema": "https://github.com/Azure/data-api-builder/releases/latest/download/dab.draft.schema.json",
      "data-source": {
        "database-type": "mssql",
        "connection-string": "Server=localhost,1433;Initial Catalog=Library;User Id=sa;Password=<your-password>;TrustServerCertificate=true;"
      },
      "entities": {
        "book": {
          "source": "dbo.Books",
          "permissions": [
            {
              "actions": [
                "read"
              ],
              "role": "anonymous"
            }
          ]
        }
      }
    }
    

    重要

    这是一个示例配置,假定本地计算机上提供了 SQL Server。 如果您没有安装 SQL Server,您可以使用您的示例数据来运行一个 SQL Server 的 Docker 容器。 有关详细信息,请参阅 创建示例数据

  3. 运行 src/Service/Azure.DataApiBuilder.Service.csproj 项目。 使用 --ConfigFileName 参数指定在上一步中创建的配置文件。

    dotnet run --project src/Service/Azure.DataApiBuilder.Service.csproj --ConfigFileName ../../dab-config.json 
    

    小窍门

    数据 API 生成器引擎将尝试从 dab-config.json 同一文件夹中的文件加载配置(如果存在)。 如果没有dab-config.json文件,引擎仍会启动,但无法提供任何服务。