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
100
.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
1
180
技書博で見つけた本
tomokusaba
0
60
新卒2年目でドロップアウトしてからの20年間
tomokusaba
0
100
Azure Well-Architected Framework入門
tomokusaba
1
230
Microsoft Playwright Testing廃止!
tomokusaba
0
69
Azure Well-Architected Framework入門
tomokusaba
1
430
WebアプリケーションのUI構築で気を付けてるポイント
tomokusaba
0
280
Azure Cloud Adoption Framework(計画編)
tomokusaba
1
110
速報Visual Studio 2026(Insiders)
tomokusaba
0
140
Other Decks in Technology
See All in Technology
Android Studio Otter の最新 Gemini 機能 / Latest Gemini features in Android Studio Otter
yanzm
0
290
改竄して学ぶコンテナサプライチェーンセキュリティ ~コンテナイメージの完全性を目指して~/tampering-container-supplychain-security
mochizuki875
1
380
マルチドライブアーキテクチャ: 複数の駆動力でプロダクトを前進させる
knih
0
9.3k
『星の世界の地図の話: Google Sky MapをAI Agentでよみがえらせる』 - Google Developers DevFest Tokyo 2025
taniiicom
0
270
Axon Frameworkのイベントストアを独自拡張した話
zozotech
PRO
0
230
ZOZOTOWNカート決済リプレイス ── モジュラモノリスという過渡期戦略
zozotech
PRO
0
520
PostgreSQL で列データ”ファイル”を利用する ~Arrow/Parquet を統合したデータベースの作成~
kaigai
0
160
AIと自動化がもたらす業務効率化の実例: 反社チェック等の調査・業務プロセス自動化
enpipi
0
780
AI時代の戦略的アーキテクチャ 〜Adaptable AI をアーキテクチャで実現する〜 / Enabling Adaptable AI Through Strategic Architecture
bitkey
PRO
14
9.5k
Redux → Recoil → Zustand → useSyncExternalStore: 状態管理の10年とReact本来の姿
zozotech
PRO
21
9k
LINEスキマニ/LINEバイトにおけるバックエンド開発
lycorptech_jp
PRO
0
370
ABEMAのCM配信を支えるスケーラブルな分散カウンタの実装
hono0130
4
1.1k
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
A designer walks into a library…
pauljervisheath
210
24k
Designing Experiences People Love
moore
142
24k
Leading Effective Engineering Teams in the AI Era
addyosmani
8
1.1k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
Site-Speed That Sticks
csswizardry
13
970
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.8k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
How to Think Like a Performance Engineer
csswizardry
28
2.3k
Why Our Code Smells
bkeepers
PRO
340
57k
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)
おしまい おしまい