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

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

先决条件

为存储库创建分支和克隆

首先创建自己的 GitHub 存储库分支 azure/data-api-builder 。 此分叉允许你保留自己的更改。 如果愿意,始终可以打开拉取请求并建议对上游存储库的更改。

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

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

  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。 如果不这样做,则可以运行 Docker 容器,以便使用示例数据SQL Server。 有关详细信息,请参阅 创建示例数据

  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如果没有文件,引擎无论如何都会启动,但它无法提供任何内容。