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
.NET 10のASP. NET Core注目の新機能
Search
tomokusaba
November 20, 2025
Technology
0
200
.NET 10のASP. NET Core注目の新機能
.NET 10のASP. NET Core注目の新機能
【大阪出張編】.NETラボ 勉強会 2025年11月
https://dotnetlab.connpass.com/event/364122/
tomokusaba
November 20, 2025
Tweet
Share
More Decks by tomokusaba
See All by tomokusaba
プロダクトでもバイブコーディングしようぜ!
tomokusaba
0
20
M5Stackで猫耳光らせよう!
tomokusaba
0
94
コンピューティングリソース何を使えばいいの?
tomokusaba
1
36
Microsoft Agent Frameworkの可観測性
tomokusaba
1
140
.NET 10の概要
tomokusaba
0
150
.NET 10のASP.NET Coreの気になる新機能
tomokusaba
0
140
コンピューティングリソース何を使えばいいの?
tomokusaba
1
240
技書博で見つけた本
tomokusaba
0
86
新卒2年目でドロップアウトしてからの20年間
tomokusaba
0
130
Other Decks in Technology
See All in Technology
AI駆動開発を事業のコアに置く
tasukuonizawa
1
390
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
2.1k
Codex 5.3 と Opus 4.6 にコーポレートサイトを作らせてみた / Codex 5.3 vs Opus 4.6
ama_ch
0
210
生成AIを活用した音声文字起こしシステムの2つの構築パターンについて
miu_crescent
PRO
3
220
Bill One急成長の舞台裏 開発組織が直面した失敗と教訓
sansantech
PRO
2
400
20260208_第66回 コンピュータビジョン勉強会
keiichiito1978
0
200
OWASP Top 10:2025 リリースと 少しの日本語化にまつわる裏話
okdt
PRO
3
850
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
4
1.4k
日本の85%が使う公共SaaSは、どう育ったのか
taketakekaho
1
240
SRE Enabling戦記 - 急成長する組織にSREを浸透させる戦いの歴史
markie1009
0
170
AIエージェントを開発しよう!-AgentCore活用の勘所-
yukiogawa
0
190
マネージャー視点で考えるプロダクトエンジニアの評価 / Evaluating Product Engineers from a Manager's Perspective
hiro_torii
0
190
Featured
See All Featured
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
140
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.2k
Fireside Chat
paigeccino
41
3.8k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
380
Chasing Engaging Ingredients in Design
codingconduct
0
110
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
300
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
430
Odyssey Design
rkendrick25
PRO
1
500
Prompt Engineering for Job Search
mfonobong
0
160
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Transcript
.NET 10のASP. NET Core 注目の新機能 FutureOne株式会社 草場 友光 .NETラボ勉強会2025年11月
自己紹介 • コミュニティ活動を通じて知識を アップデートしています。 • 2022/08-2026 Microsoft MVP (Developer Technologies)
• tomo_kusaba • ドラクエ大好き ドラクエ10のプレイ時間→ 1キャラ目:2642時間 2キャラ目:914時間 3キャラ目:789時間 4キャラ目:190時間(配信用)
注意 • 個人の見解・解釈が多分に入っています。 • 見解の相違・事実誤認などありましたらご指摘ください。
今日の目的 • とうとう、.NET10がGAになりました。 • そこで、ASP.NET Coreに着目して特に注目したい新機能に 絞って解説します。
パスキーのサポート • .NET 10の認証付きBlazor Web Appテンプレートにパスキー のサポートが含まれている • EntityFrameworkCoreの一般的な操作に従ってSQL Serverなどにテーブルを作成してデプロイすることによって動
作を確認できる。
デモ おしまい
ちなみにデモ環境 • Windows Sever 2016上のIIS • 静岡の実家においてあるMS-01のWindows Server2025上 のHyper-Vにて稼働
パスキーログイン
パスキーログイン
パスキーログイン
パスキーログイン
モデル検証の改善 • 入れ子になったオブジェクトとコレクション項目のプロパティの検証の サポート • .NET 9までは実験用のパッケージ Microsoft.AspNetCore.Components.DataAnnotations.Validatio nを使用していた <EditForm
...> <ObjectGraphDataAnnotationsValidator /> ... </EditForm> using System; using System.ComponentModel.DataAnnotations; public class Starship { ... [ValidateComplexType] public ShipDescription ShipDescription { get; set; } = new(); ... }
モデル検証の改善 • 新しい検証機能をオプトインするには: • サービスが登録されているAddValidation ファイルで、 Program拡張メソッドを呼び出します。 • Razor コンポーネント
(.razor) ではなく、C# クラス ファイル でフォーム モデル型を宣言します。 • [ValidatableType]属性を使用して、ルート フォーム モデルの 種類に注釈を付けます。 • 前の手順に従わないと、検証動作は以前の .NET リリースと同じ ままです。
モデル検証の改善 • 入れ子になったオブジェクトとコレクション項目のプロパティの検 証のサポート • .NET 9までは実験用のパッケージ ObjectGraphDataAnnotationsValidatorを使用していた <EditForm Model=“Model”>
<ObjectGraphDataAnnotationsValidator /> ... </EditForm> @code{ public Starship Model { get; set; } protected override void onInialized() => Model ??= new(); } … Builder.Services.AddValidation(); … Program.cs
モデル検証の改善 using System; using System.ComponentModel.DataAnnotations; [ValidataleType] public class Starship {
... public ShipDescription ShipDescription { get; set; } = new(); ... }
デモ おしまい
デモ(必須入力)
デモ(文字数超過)
デモ おしまい
MinimalAPIでのモデル検証のサポート • モデルの作り方はBlazorのモデルと共通! • Program.csも共通!
デモ(GET)
デモ(POST)
デモ(400)
デモ(400)
Blazor Web Appsの回線状態の永続化 サーバー側のレンダリング中、 Blazor Web Appは、ページ全体の更 新がトリガーされない限り、サーバーへの接続が長時間失われたり、プロ アクティブに一時停止されたりしたときに、ユーザーのセッション (回線)
状態を保持できます。 これにより、ユーザーは次のシナリオで保存され ていない作業を失うことなくセッションを再開できます。 • ブラウザー タブの調整 • モバイル デバイス ユーザーによるアプリの切り替え • ネットワークの中断 • プロアクティブ リソース管理 (非アクティブな回線の一時停止) • 拡張ナビゲーション
デモ(カウンターパターン①) オフラインに設定 オフライン状態で3回ク リック後にオンラインに戻 す カウンターが6に
デモ(カウンターパターン①) オフラインに設定 オフライン状態になってリ コネクションが走る そのままオンライン状態に 戻すと3の状態に戻る
Blazor Web Appの認証サンプル • OIDCを使用したBlazor Web App • Microsoft Entra
IDを使用したBlazor Web App • Windows認証を使用したBlazor Web App
Blazor Web AppのEntra IDのテンプ レの今 • https://github.com/dotnet/aspnetcore/issues/512 02 • ざっくり言うと、.NET
11以降 • これまで夏ごろまで.NET 10のマイルストーンが置かれていた状 況だったが、解決の糸口が見えず先送りとなった。 • .NET 9 → .NET 10 → .NET 11??
宣伝 おしまい
Microsoft MVPを語るバー(11/23)
AOAI Dev Day Osaka(12/5)
.NET Conf 2025 Tokyo Osaka Fukuoka
.NETラボ1月(1/24)
おしまい おしまい