次の方法で共有


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

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

[前提条件]

ヒント

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

GitHub codespaces で開く で開く

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

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

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

    dotnet tool install --global Microsoft.DataApiBuilder
    

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

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

    dotnet tool list --global
    

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

まず、ローカル データベースを構成して実行し、関連する資格情報を設定します。 次に、サンプル データを使用してデータベースをシード処理できます。

  1. Docker Hub から mcr.microsoft.com/mssql/server:2022-latest コンテナー イメージの最新のコピーを取得します。

    docker pull mcr.microsoft.com/mssql/server:2022-latest
    
  2. パスワードを設定し、エンドユーザーライセンス契約 (EULA) に同意し、ポート 1433 を発行して、Docker コンテナーを起動します。 <your-password>をカスタム パスワードに置き換えます。

    docker run \
        --env "ACCEPT_EULA=Y" \
        --env "MSSQL_SA_PASSWORD=<your-password>" \
        --publish 1433:1433 \
        --detach \
        mcr.microsoft.com/mssql/server:2022-latest
    
  3. 優先するデータ管理環境を使用してローカル データベースに接続します。 例としては、 SQL Server Management StudioVisual Studio Code 用の SQL Server 拡張機能などがありますが、これらに限定されません。

    ヒント

    Docker Linux コンテナー イメージに既定のネットワークを使用している場合、接続文字列は Server=localhost,1433;User Id=sa;Password=<your-password>;TrustServerCertificate=True;Encrypt=True;可能性があります。 <your-password>は、前に設定したパスワードに置き換えます。

  4. 新しい bookshelf データベースを作成し、残りのクエリにデータベースを使用します。

    DROP DATABASE IF EXISTS bookshelf;
    GO
    
    CREATE DATABASE bookshelf;
    GO
    
    USE bookshelf;
    GO
    
  5. 新しい dbo.authors テーブルを作成し、テーブルに基本データをシード処理します。

    DROP TABLE IF EXISTS dbo.authors;
    GO
    
    CREATE TABLE dbo.authors
    (
        id int not null primary key,
        first_name nvarchar(100) not null,
        middle_name nvarchar(100) null,
        last_name nvarchar(100) not null
    )
    GO
    
    INSERT INTO dbo.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')
    GO
    

構成ファイルを作成する

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

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

    dab init --database-type "mssql" --host-mode "Development" --connection-string "Server=localhost,1433;User Id=sa;Database=bookshelf;Password=<your-password>;TrustServerCertificate=True;Encrypt=True;"
    
  2. を使用して dab add エンティティを追加します。

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

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

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

  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]
    

    ヒント

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

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

    ヒント

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

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

    ヒント

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

次のステップ