次の方法で共有


クイック スタート: PostgreSQL でデータ API ビルダーを使用する

このクイック スタートでは、ローカル PostgreSQL データベースを対象とするデータ API ビルダー構成ファイルのセットを構築します。

前提条件

ヒント

または、すべての開発者の前提条件が既にインストールされている GitHub Codespaces でこのクイックスタートを開きます。 独自の Azure サブスクリプションを持ち込むだけです。 GitHub アカウントには、ストレージとコア時間のエンタイトルメントが無償で含まれています。 詳細については、 GitHub アカウントの含まれているストレージとコア時間に関するページを参照してください。

GitHub Codespace で開く

Data API ビルダー CLI をインストールする

Microsoft.DataApiBuilder NuGet から .NET ツールとしてパッケージをインストールします。

  1. を使用して、 引数を指定dotnet tool installして 最新バージョンの をMicrosoft.DataApiBuilder--globalインストールします。

    dotnet tool install --global Microsoft.DataApiBuilder
    

    注意

    パッケージが既にインストールされている場合は、 を使用して dotnet tool updateパッケージを更新します。

    dotnet tool update --global Microsoft.DataApiBuilder
    
  2. 引数を使用して--global、ツールが インストールdotnet tool listされていることを確認します。

    dotnet tool list --global
    

ローカル データベースを構成する

まず、ローカル データベースを構成して実行します。 その後、サンプル データを含む新しいコンテナーをシードできます。

  1. Docker Hubからコンテナー イメージのpostgres:16最新のコピーを取得します。

    docker pull postgres:16
    
  2. パスワードを設定し、ポート 5432 を発行して、Docker コンテナーを起動します。 をカスタム パスワードに置き換えます <your-password>

    docker run \
        --publish 5432:5432 \
        --env "POSTGRES_PASSWORD=<your-password>" \
        --detach \
        postgres:16
    
  3. 優先するデータ管理環境を使用して、ローカル データベースに接続します。 例としては、 pgAdminAzure Data StudioVisual Studio Code 用 PostgreSQL 拡張機能などがありますが、これらに限定されません。

    ヒント

    Docker Linux コンテナー イメージに既定のネットワークを使用している場合、接続文字列は になりますHost=localhost;Port=5432;User ID=postgres;Password=<your-password>;。 を、前に設定したパスワードに置き換えます <your-password>

  4. 新しい bookshelf データベースを作成します。

    DROP DATABASE IF EXISTS bookshelf;
    
    CREATE DATABASE bookshelf;
    
  5. dbo.authorsしいテーブルをCreateし、テーブルに基本データをシードします。

    CREATE TABLE IF NOT EXISTS authors
    (
        id INT NOT NULL PRIMARY KEY,
        first_name VARCHAR(100) NOT NULL,
        middle_name VARCHAR(100),
        last_name VARCHAR(100) NOT NULL
    );
    
    INSERT INTO authors VALUES
        (01, 'Henry', NULL, 'Ross'),
        (02, 'Jacob', 'A.', 'Hancock'),
        (03, 'Sydney', NULL, 'Mattos'),
        (04, 'Jordan', NULL, 'Mitchell'),
        (05, 'Victoria', NULL, 'Burke'),
        (06, 'Vance', NULL, 'DeLeon'),
        (07, 'Reed', NULL, 'Flores'),
        (08, 'Felix', NULL, 'Henderson'),
        (09, 'Avery', NULL, 'Howard'),
        (10, 'Violet', NULL, 'Martinez');
    

構成ファイルを作成する

DAB CLI を使用してベースライン構成ファイルをCreateします。 次に、現在の資格情報を使用して開発構成ファイルを追加します。

  1. を使用して、一般的な構成ファイルをCreatedab initします。 最初のセクションの--connection-stringデータベース 接続文字列に引数を追加します。 を、このガイドで前に設定したパスワードに置き換えます <your-password> 。 また、接続文字列に値を追加Database=bookshelfします。

    dab init --database-type "postgresql" --host-mode "Development" --connection-string "Host=localhost;Port=5432;Database=bookshelf;User ID=postgres;Password=<your-password>;"
    
  2. を使用して Author エンティティを dab add追加します。

    dab add Author --source "public.authors" --permissions "anonymous:*"
    

ローカル データベースを使用して API をテストする

次に、Data API ビルダー ツールを起動して、開発中に構成ファイルがマージされていることを検証します。

  1. を使用して dab start 、ツールを実行し、エンティティの API エンドポイントを作成します。

    dab start
    
  2. ツールの出力には、実行中の API に移動するために使用するアドレスを含める必要があります。

          Successfully completed runtime initialization.
    info: Microsoft.Hosting.Lifetime[14]
          Now listening on: <http://localhost:5000>
    info: Microsoft.Hosting.Lifetime[0]
    

    ヒント

    この例では、アプリケーションはポート 5000 で実行されていますlocalhost。 実行中のアプリケーションのアドレスとポートが異なる場合があります。

  3. まず、 に GET 要求 /api/Authorを発行して、API を手動で試します。

    ヒント

    この例では、URL は になります https://localhost:5000/api/Author。 この URL には、Web ブラウザーを使用して移動できます。

  4. 次に、 の Swagger ドキュメント ページに /swagger移動します。

    ヒント

    この例では、URL は になります https://localhost:5000/swagger。 ここでも、Web ブラウザーを使用してこの URL に移動できます。

次のステップ