2025-04-16: .NET 8.0.15 & 9.0.4, .NET 10 Preview 3, .NET Aspire 9.2, Rewriting NuGet Restore in .NET 9

Published on Wednesday, 16 April 2025

トピックス

.NET and .NET Framework April 2025 servicing releases updates - .NET Blog

https://devblogs.microsoft.com/dotnet/dotnet-and-dotnet-framework-april-2025-servicing-updates/

.NET および .NET Framework の2025年4月の更新として .NET 8.0.15 と 9.0.4 がリリースされている。

このリリースでは ASP.NET Core に関する1件の脆弱性が修正されている。.NET Framework に対する新しいリリースはない。

.NET 10 Preview 3 is now available! - .NET Blog

https://devblogs.microsoft.com/dotnet/dotnet-10-preview-3/

.NET 10 Preview 3 がリリースされた。

このリリースではいくつかのライブラリーやランタイムの改善、C# の拡張メンバーなどが含まれている。

.NET Aspire 9.2 is Now Available with New Ways to Deploy - .NET Blog

https://devblogs.microsoft.com/dotnet/dotnet-aspire-92-is-now-available-with-new-ways-to-deploy/

.NET Aspire 9.2 がリリースされた。

このリリースではリソースグラフ、カスタムリソース URL、リソースのディープリンク、カスタム HTTP コマンドのビルトイン化、 Docker Compose パブリッシャーの追加といったものが含まれる。

また Azure SQL Server と Azure PostgreSQL との連携にはマネージド ID に関連した破壊的変更がある。

How we ended up rewriting NuGet Restore in .NET 9 - .NET Blog

https://devblogs.microsoft.com/dotnet/rewriting-nuget-restore-in-dotnet-9/

.NET 9 の NuGet リストアのアルゴリズムを書き直すことになった経緯とリリースまでの流れについて。

Microsoft 社内チームから NuGet のリストアに長い時間がかかるという報告から始まり、それまでの NuGet の歴史とパッケージグラフの難しさ、パフォーマンス最適化や新しいアルゴリズムの開発とそれをリリースするまでの道のりが書かれている。

Join the .NET & C# Teams at Microsoft Build 2025 - .NET Blog

https://devblogs.microsoft.com/dotnet/join-us-at-build-2025/

Build 2025 での .NET と C# に関するセッションやハンズオン、その他についての紹介。

ReSharper and .NET Tools 2025.1 Release Candidates Are Now Available | The .NET Tools Blog

https://blog.jetbrains.com/dotnet/2025/04/09/resharper-2025-1-release-candidate/

ReSharper および .NET Tools 2025.1 Release Candidate がリリースされた。

このリリースでは C# 14 の言語サポートの強化、リファクタリングやフォーマット、コードスタイルの強化、パフォーマンス改善、ゲーム開発の強化、Qodana Team Code Quality 拡張、デコンパイラーの強化が含まれている。

その他 dotMemory は Visual Studio と完全に統合され、dotTrace はタブ化されたスナップショット解析の導入、dotCover は軽微な改善とバグ修正が含まれている。

OpenSilver 3.2 Brings WPF Apps to iOS, Android, and Beyond via MAUI Hybrid

https://opensilver.net/announcements/3-2/

OpenSilver 3.2 がリリースされた。

このリリースでは .NET MAUI Hybrid に対応し、iOS や Andorid などで実行できるようになった。そのほか WPF との互換性の向上や、IDE との統合の強化などが含まれている。

Build a Model Context Protocol (MCP) server in C# - .NET Blog

https://devblogs.microsoft.com/dotnet/build-a-model-context-protocol-mcp-server-in-csharp/

MCP SDK for C# を使用して C# で MCP サーバーを実装する方法について。

リリース

アーティクル、スライドなど

Using GitHub Models with Semantic Kernel

https://dev.to/willvelida/using-github-models-with-semantic-kernel-2kmp

Semantic Kernel から GitHub Models の GPT-4.1 モデルを呼ぶ手順について。

AWS Bedrock anthropic claude tool call integration with microsoft semantic kernel

https://dev.to/stormhub/aws-bedrock-anthropic-claude-tool-call-integration-with-microsoft-semantic-kernel-29g3

Sermantic Kernel から AWS Bedrock の Claude を呼び出す手順について。

.NETで簡単なMCPサーバー作ってみた

https://qiita.com/yariri/items/03c775385319c1f49314

MCP SDK for C# で MCP サーバーを実装して Cursor から呼び出す方法について。

汎用ホストでNLog設定をappsettings.jsonで済ませる備忘録

https://zenn.dev/voltaney/articles/generic-host-nlog

NLog を汎用ホストに組み込み、appsettings.json で構成する方法について。

DynamicExpressoを使用して文字列からメソッドを実行する

https://zenn.dev/srtia2318/articles/introduce1-dynamicexpresso-lib-45433543cd1758

文字列から動的な式を実行するためのライブラリー DynamicExpresso の紹介。

Semantic Kernel で複数エージェントを簡単に連携させてみよう

https://zenn.dev/microsoft/articles/semantic-kernel-agents-006

Semantic Kernel で複数のエージェントを連携させる機能について。

【C# .NET10 Preview3】null 条件付き代入

https://qiita.com/abetakahiro123/items/db05ae0cab986183cfab

.NET 10 Preview 3 の C# 14 で導入された null 条件付き代入 (Null-conditional assignment) についての紹介。

C#のベンチマークを使ってみた

https://qiita.com/yamabee2021/items/8c79610a63f48ef10c6e

C# でのベンチマークの取り方について。

記事では Stopwatch を使用した方法とその方法の懸念点と対処方法としての BenchmarkDotNet を紹介している。

RiderでLINQのメソッドチェインの途中結果を確認する

https://qiita.com/RyotaMurohoshi/items/e8010bec07fa936ea4e4

Rider のデバッガーで C# の LINQ のメソッドチェーンのメソッドごとの戻り値を確認する方法について。

VSCode で C# 開発の時の OmniSharp vs C# Dev Kit 比較表

https://qiita.com/tnishiki/items/6480fa0d37dd3774fbe1

Visual Studio Code の OmniSharp と C# Dev Kit の比較。

Deep Dive into Hedging Requests in .NET 9 — Part 1 - Viktor Ponamarev - Medium

https://medium.com/@vikpoca/deep-dive-into-hedging-requests-in-net-9-part-1-d46f23bd503b

.NET 9 とそれ以前のバージョンでのリクエストを後追いで複数回投げるヘッジリクエストのサポートについて。

【.NET 10 Preview3】C# 14 新機能まとめ

https://qiita.com/yariri/items/6ccad66422ccded614d3

.NET 10 Preview 3 での C# 14 の新機能の紹介。

Optimizing memory usage with modern .NET features

https://mijailovic.net/2025/04/10/memory-optimizations/

モダンな .NET の機能を使ってメモリー使用量を削減する方法の紹介。

C# Language Support in ReSharper and Rider 2025.1 | The .NET Tools Blog

https://blog.jetbrains.com/dotnet/2025/04/10/csharp-language-support-in-resharper-and-rider-2025-1/

ReSharper と Rider の 2025.1 での C# 言語サポートについて。

  • 構造化ログサポート
  • 文字列結合のコンテキストアクション
  • 暗黙の using リファクタリング
  • 複数行 To-Do コメントの改善
  • 戻り値に対する Language Injection
  • 冗長な重複コード
  • CancellationToken の誤使用
  • ポストフィックステンプレートの挿入
  • パラメーター変更リファクタリング
  • 拡張された型のコンテキストハイライト
  • "Chop" フォーマットコンテキストアクション
  • Debug.Assert での変更
  • 不正確な Stream の読み取り
  • タプルのコンポーネント名
  • Enum のメンバー名のリファクタリング
  • 束縛されていないジェネリクスの nameof
  • ファーストクラスの Span 型
  • モディファイアを持つシンプルなラムダ引数
  • デフォルトのリテラル提案

OpenAIとAzureAIのSDKを整理する

https://qiita.com/takashiuesaka/items/037c1d7c11759f809a48

現在リリースされている Open AI と Azure AI の .NET 向けの様々な SDK について。

WinUI3のFlyoutのスタイルを変更する

https://zenn.dev/voltaney/articles/winui3-flyout-style

WinUI 3 の Flyout のスタイルを変更する方法について。

PlantUMLコードを検証するMCPサーバーを実装してみた

https://qiita.com/kwhrkzk/items/a7ae51aa2e00406b9c8f

PlantUML を検証する MCP サーバーを実装してみたという記事。

.NET Aspire and Azure Functions integration preview - Visual Studio Blog

https://devblogs.microsoft.com/visualstudio/net-aspire-and-azure-functions-integration-preview/

.NET Aspire と Azure Functions、Visual Studio の統合プレビューの紹介。

Rider 2025.1 Release Candidate Is Out! | The .NET Tools Blog

https://blog.jetbrains.com/dotnet/2025/04/09/rider-2025-1-rc/

MSIXパッケージのAppData仮想化にまつわるリダイレクトの挙動

https://zenn.dev/voltaney/articles/msix-appdata-virtualization

パッケージ化されたアプリケーションから仮想化された AppData へアクセスする際のパスの有無によるの挙動について。

WinUI3でPackaged/Unpackagedの両方に対応するための方策

https://zenn.dev/voltaney/articles/winui3-switch-package-type

WinUI 3 アプリケーションをパッケージ化、非パッケージ化の両方の配布形式に対応させる方法について。

Multi-Process CPU Usage Analysis in Visual Studio - Visual Studio Blog

https://devblogs.microsoft.com/visualstudio/multi-process-cpu-usage-analysis-in-visual-studio/

Azure Container Apps Dynamic Sessionで安全にPythonスクリプトを実行。.NETからも呼べるよ

https://qiita.com/k-yamamoto/items/bb947a8694a60b32df15

.NET から Container Apps Dynamic Sessions で Python を実行するための実装について。

Getting Started With Queryable Encryption in the MongoDB C# Driver

https://dev.to/mongodb/getting-started-with-queryable-encryption-in-the-mongodb-c-driver-2o7l

MongoDB の C# ドライバーで Queryable Encryption を使用する方法について。

C# interop 系文字列メモ

https://zenn.dev/shinta0806/articles/interop-strings

Win32 P/Invoke で文字列を受け渡しする際の取り扱いについてのメモ。

EF Coreでシーケンスの次の値を取得する(ExecuteSqlRawAsync, FromSql)

https://qiita.com/jun1s/items/1c902b1f6c75497206e3

Entity Framework Core と SQL Server でシーケンスの次の値を取り出す方法について。

dotInsights | April 2025 | The .NET Tools Blog

https://blog.jetbrains.com/dotnet/2025/04/02/dotinsights-april-2025/

JetBrains による .NET 関連情報の2025年4月のまとめ。

【C#】何故 C# を好むのか。~他の言語と比較しながら~ - ねののお庭。

https://blog.neno.dev/entry/2025/04/14/130323

C# と .NET の現状や特徴や他の言語との比較を交え、C# を好む理由について。

ライブラリ、リポジトリ、ツールなど

nuskey8/Csv-CSharp: Fast CSV Serializer for .NET and Unity

https://github.com/nuskey8/Csv-CSharp

シリアライザースタイルの API を持つ高速な CSV パーサー。