Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Web API development in Visual Studio 2022
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Yuta Matsumura
May 31, 2023
Technology
0
5.3k
Web API development in Visual Studio 2022
https://dotnet-communities.connpass.com/event/277868/
での資料です
Yuta Matsumura
May 31, 2023
Tweet
Share
More Decks by Yuta Matsumura
See All by Yuta Matsumura
AspireとGitHub Modelsで作るお手軽AIアプリ
tsubakimoto_s
0
63
Memories of GitHub Universe & San Francisco
tsubakimoto_s
0
50
私のMCPの使い方
tsubakimoto_s
0
160
これからはじめる Model Context Protocol
tsubakimoto_s
0
67
Cloudflare の MCP サーバーをためしてみた
tsubakimoto_s
1
130
re:Invent の裏でアップデートされていた .NET Aspire で統合するAWS のクラウドリソース
tsubakimoto_s
1
140
.NET AspireでAzure Functionsやクラウドリソースを統合する
tsubakimoto_s
0
350
Microsoft Entra External IDとAzure AD B2C
tsubakimoto_s
0
2.4k
Minimal Observability on Minimal API
tsubakimoto_s
0
130
Other Decks in Technology
See All in Technology
Mosaic AI Gatewayでコーディングエージェントを配るための運用Tips / JEDAI 2026 新春 Meetup! AIコーディング特集
genda
0
150
Webhook best practices for rock solid and resilient deployments
glaforge
1
240
GitHub Issue Templates + Coding Agentで簡単みんなでIaC/Easy IaC for Everyone with GitHub Issue Templates + Coding Agent
aeonpeople
1
160
SREじゃなかった僕らがenablingを通じて「SRE実践者」になるまでのリアル / SRE Kaigi 2026
aeonpeople
6
1.9k
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
1.4k
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
150
Digitization部 紹介資料
sansan33
PRO
1
6.8k
小さく始めるBCP ― 多プロダクト環境で始める最初の一歩
kekke_n
1
310
システムのアラート調査をサポートするAI Agentの紹介/Introduction to an AI Agent for System Alert Investigation
taddy_919
2
1.6k
データの整合性を保ちたいだけなんだ
shoheimitani
6
2.5k
SREのプラクティスを用いた3領域同時 マネジメントへの挑戦 〜SRE・情シス・セキュリティを統合した チーム運営術〜
coconala_engineer
2
550
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
10k
Featured
See All Featured
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
Google's AI Overviews - The New Search
badams
0
900
WENDY [Excerpt]
tessaabrams
9
36k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
230
A better future with KSS
kneath
240
18k
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
56
50k
Claude Code のすすめ
schroneko
67
210k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
250
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
120
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
280
Transcript
#dotnetjpcommunities Web API development in Visual Studio 2022 2023/05/31 .NET
の 3 日間 day1 Yuta Matsumura © 2023 Yuta Matsumura.
#dotnetjpcommunities 松村 優大 (Yuta Matsumura) Currently working for © 2023
Yuta Matsumura. Chief Technical Architect C#, PHP, Azure, GitHub が好き Microsoft MVP (Developer Technologies) #fukuten #devblogradio の中の人 @tsubakimoto_s
#dotnetjpcommunities © 2023 Yuta Matsumura.
#dotnetjpcommunities © 2023 Yuta Matsumura. 2023年6月24日 (土) 福岡市で開催 #phpconfuk
#dotnetjpcommunities © 2023 Yuta Matsumura. 2023年8月3日 (木) 福岡市で開催 #cndf2023 プロポーザル募集中
event.cloudnativedays.jp/cndf2023
#dotnetjpcommunities これからお話しすること Visual Studio 2022 での Web API 開発に関する最近の技術 https://devblogs.microsoft.com/visualstudio/web-api-
development-in-visual-studio-2022/ © 2023 Yuta Matsumura.
#dotnetjpcommunities 前提:Visual Studio 2022 17.7.0 Preview 1.0 © 2023 Yuta
Matsumura. https://visualstudio.microsoft.com/
#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.
#dotnetjpcommunities プロジェクトの作成 © 2023 Yuta Matsumura.
#dotnetjpcommunities プロジェクトの作成 © 2023 Yuta Matsumura.
#dotnetjpcommunities プロジェクトの作成 © 2023 Yuta Matsumura.
#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
#dotnetjpcommunities #dotnetjpcommunities Program.cs
#dotnetjpcommunities © 2023 Yuta Matsumura. https://speakerdeck.com/tsubakimoto_s/minimal-api-to-di-noliang-izu-mihe-wase
#dotnetjpcommunities プロジェクトの作成 © 2023 Yuta Matsumura.
#dotnetjpcommunities #dotnetjpcommunities のサポート © 2023 Yuta Matsumura.
#dotnetjpcommunities #dotnetjpcommunities 定義を設定した エンドポイント © 2023 Yuta Matsumura.
#dotnetjpcommunities スキャフォールドの実施 © 2023 Yuta Matsumura.
#dotnetjpcommunities #dotnetjpcommunities こういうクラスがあったとします © 2023 Yuta Matsumura.
#dotnetjpcommunities © 2023 Yuta Matsumura.
#dotnetjpcommunities © 2023 Yuta Matsumura.
#dotnetjpcommunities © 2023 Yuta Matsumura.
#dotnetjpcommunities スキャフォールディング後 • DB コンテキスト • 接続文字列の設定 (appsettings.json) • エンドポイントの定義
• EF Core ツールのインストール • Microsoft.EntityFrameworkCore.Sqlite • Microsoft.EntityFrameworkCore.Tools • Microsoft.VisualStudio.Web.CodeGenerati on.Design © 2023 Yuta Matsumura.
#dotnetjpcommunities #dotnetjpcommunities エンドポイント © 2023 Yuta Matsumura.
#dotnetjpcommunities © 2023 Yuta Matsumura.
#dotnetjpcommunities EF Core でのマイグレーション © 2023 Yuta Matsumura.
#dotnetjpcommunities © 2023 Yuta Matsumura.
#dotnetjpcommunities © 2023 Yuta Matsumura.
#dotnetjpcommunities © 2023 Yuta Matsumura.
#dotnetjpcommunities Web API エンドポイントエクスプローラー © 2023 Yuta Matsumura.
#dotnetjpcommunities © 2023 Yuta Matsumura.
#dotnetjpcommunities #dotnetjpcommunities エンドポイントエクスプローラーのサポート © 2023 Yuta Matsumura.
#dotnetjpcommunities 表示>その他のウィンドウ © 2023 Yuta Matsumura.
#dotnetjpcommunities © 2023 Yuta Matsumura.
#dotnetjpcommunities © 2023 Yuta Matsumura.
#dotnetjpcommunities #dotnetjpcommunities ... 変数 ... HTTPリクエスト(GET) 区切り © 2023 Yuta
Matsumura.
#dotnetjpcommunities #dotnetjpcommunities ... 変数 ... HTTPリクエスト(POST) リクエストヘッダー リクエストヘッダー リクエストボディ 変数の埋込
© 2023 Yuta Matsumura.
#dotnetjpcommunities VS の REST Client • .http 拡張子、または .rest 拡張子
• 以前は REST Client 拡張機能が必要だった • 今は Visual Studio がサポートしている • VS Code でも同様のことができる https://marketplace.visualstudio.com/items?itemName=humao.rest-client © 2023 Yuta Matsumura.
#dotnetjpcommunities VS の REST Client でまだできないこと • OPTIONS メソッド •
複数行にわたるリクエスト • 名前付きリクエスト • 動的変数 • 環境ファイル • リクエストボディのファイルパス 指定 • multipart/form-data を使用する場 合の本文の混合形式 • GraphQL リクエスト • cURLリクエスト • cURL としてコピー/貼り付け • リクエスト履歴 • 応答本文をファイルに保存する • 証明書ベースの認証 • プロンプト変数 • システム変数 • 応答プレビューのカスタマイズ • リクエストごとの設定 © 2023 Yuta Matsumura.
#dotnetjpcommunities (おまけ)Visual Studio dev tunnels © 2023 Yuta Matsumura.
#dotnetjpcommunities ローカル環境 Web API の動作確認 © 2023 Yuta Matsumura. https://example.com/...
https://localhost/... 到達しない!
#dotnetjpcommunities ローカル環境 Web API の動作確認 © 2023 Yuta Matsumura. https://example.com/...
https://xxx.ngrok.io/...
#dotnetjpcommunities ローカル環境 Web API の動作確認 © 2023 Yuta Matsumura. https://example.com/...
https://xxx.devtunnels.ms/...
#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
#dotnetjpcommunities © 2023 Yuta Matsumura. 一時的・永続的 非公開・組織用・公開用
#dotnetjpcommunities dev tunnels のアクセス制御 種類 アクセス範囲 非公開 (Private) 作成者のみ 組織用
(Organization) 同一組織アカウントのみ (MSAやGitHubアカウントでは非公開と同じ) 公開用 (Public) 認証なし © 2023 Yuta Matsumura.
#dotnetjpcommunities 初回アクセス時 © 2023 Yuta Matsumura.
#dotnetjpcommunities © 2023 Yuta Matsumura.
#dotnetjpcommunities ご清聴ありがとうございました © 2023 Yuta Matsumura.