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
210
.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
23
M5Stackで猫耳光らせよう!
tomokusaba
0
99
コンピューティングリソース何を使えばいいの?
tomokusaba
1
40
Microsoft Agent Frameworkの可観測性
tomokusaba
1
150
.NET 10の概要
tomokusaba
0
150
.NET 10のASP.NET Coreの気になる新機能
tomokusaba
0
150
コンピューティングリソース何を使えばいいの?
tomokusaba
1
240
技書博で見つけた本
tomokusaba
0
88
新卒2年目でドロップアウトしてからの20年間
tomokusaba
0
140
Other Decks in Technology
See All in Technology
Agent Skils
dip_tech
PRO
0
170
生成AIで始める業務改革 - 製造業編 in 福島 -
daikikanemitsu
2
560
Amazon Rekognitionで 「信玄餅きなこ問題」を解決する
usanchuu
1
290
20260208_第66回 コンピュータビジョン勉強会
keiichiito1978
0
240
(技術的には)社内システムもOKなブラウザエージェントを作ってみた!
har1101
1
450
ClickHouseはどのように大規模データを活用したAIエージェントを全社展開しているのか
mikimatsumoto
0
330
私たち準委任PdEは2つのプロダクトに挑戦する ~ソフトウェア、開発支援という”二重”のプロダクトエンジニアリングの実践~ / 20260212 Naoki Takahashi
shift_evolve
PRO
3
330
"共通化"と"Embed"のブレンドでスケール可能な運用を!M&Aを支えるGENDA SREの実践 / GENDA Tech Talk #3
genda
0
180
ECS障害を例に学ぶ、インシデント対応に備えたAIエージェントの育て方 / How to develop AI agents for incident response with ECS outage
iselegant
5
770
ブロックテーマ、WordPress でウェブサイトをつくるということ / 2026.02.07 Gifu WordPress Meetup
torounit
0
220
GitHub Copilot CLI 現状確認会議(2026年2月のすがた)
torumakabe
1
190
AWS Network Firewall Proxyを触ってみた
nagisa53
1
270
Featured
See All Featured
Discover your Explorer Soul
emna__ayadi
2
1.1k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
260
Docker and Python
trallard
47
3.7k
Code Reviewing Like a Champion
maltzj
527
40k
Chasing Engaging Ingredients in Design
codingconduct
0
120
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8k
Designing for Timeless Needs
cassininazir
0
140
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.3k
The Spectacular Lies of Maps
axbom
PRO
1
540
HDC tutorial
michielstock
1
420
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.6k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
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)
おしまい おしまい