Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Web API development in Visual Studio 2022

Web API development in Visual Studio 2022

Yuta Matsumura

May 31, 2023
Tweet

More Decks by Yuta Matsumura

Other Decks in Technology

Transcript

  1. #dotnetjpcommunities Web API development in Visual Studio 2022 2023/05/31 .NET

    の 3 日間 day1 Yuta Matsumura © 2023 Yuta Matsumura.
  2. #dotnetjpcommunities 松村 優大 (Yuta Matsumura) Currently working for © 2023

    Yuta Matsumura. Chief Technical Architect C#, PHP, Azure, GitHub が好き Microsoft MVP (Developer Technologies) #fukuten #devblogradio の中の人 @tsubakimoto_s
  3. #dotnetjpcommunities 目次 1. Visual Studio でのスキャフォールド 2. Visual Studio での

    Entity Framework Core サポート 3. Visual Studio でのエンドポイントエクスプローラー 4. Visual Studio での REST クライアント 5. (おまけ)Visual Studio dev tunnels © 2023 Yuta Matsumura.
  4. #dotnetjpcommunities 最小限の API = Minimal API • ASP.NET Core 6.0

    で登場した機能 • 依存関係が最小限の Web API を作成 • ルーティングで構成するエンドポイント定義 (ApiContollerを使わない) © 2023 Yuta Matsumura. https://learn.microsoft.com/ja-jp/aspnet/core/fundamentals/minimal-apis
  5. #dotnetjpcommunities スキャフォールディング後 • DB コンテキスト • 接続文字列の設定 (appsettings.json) • エンドポイントの定義

    • EF Core ツールのインストール • Microsoft.EntityFrameworkCore.Sqlite • Microsoft.EntityFrameworkCore.Tools • Microsoft.VisualStudio.Web.CodeGenerati on.Design © 2023 Yuta Matsumura.
  6. #dotnetjpcommunities VS の REST Client • .http 拡張子、または .rest 拡張子

    • 以前は REST Client 拡張機能が必要だった • 今は Visual Studio がサポートしている • VS Code でも同様のことができる https://marketplace.visualstudio.com/items?itemName=humao.rest-client © 2023 Yuta Matsumura.
  7. #dotnetjpcommunities VS の REST Client でまだできないこと • OPTIONS メソッド •

    複数行にわたるリクエスト • 名前付きリクエスト • 動的変数 • 環境ファイル • リクエストボディのファイルパス 指定 • multipart/form-data を使用する場 合の本文の混合形式 • GraphQL リクエスト • cURLリクエスト • cURL としてコピー/貼り付け • リクエスト履歴 • 応答本文をファイルに保存する • 証明書ベースの認証 • プロンプト変数 • システム変数 • 応答プレビューのカスタマイズ • リクエストごとの設定 © 2023 Yuta Matsumura.
  8. #dotnetjpcommunities Visual Studio dev tunnels • Visual Studio 2022 17.5

    Preview から登場 • ローカルの Web エンドポイントを外部公開する • 一時的または永続的なエンドポイント • アクセス制御可能 • HTTPS プロトコルで提供される © 2023 Yuta Matsumura. https://learn.microsoft.com/ja-jp/connectors/custom-connectors/port-tunneling
  9. #dotnetjpcommunities dev tunnels のアクセス制御 種類 アクセス範囲 非公開 (Private) 作成者のみ 組織用

    (Organization) 同一組織アカウントのみ (MSAやGitHubアカウントでは非公開と同じ) 公開用 (Public) 認証なし © 2023 Yuta Matsumura.