トピックス
Microsoft Build | May 19-22, 2025
https://build.microsoft.com/en-US/home
Microsoft の開発者向けイベント Build の公式サイトがオープンし、登録の受付が開始された。
2025年は5月1日から22日までシアトルとオンラインで開催される。
Announcing Hot Design Public Beta - A Visual Designer for Cross-Platform Desktop, Mobile and Web Apps
https://platform.uno/blog/hot-design-public-beta/
Uno Platform の新しい UI デザイナーである Hot Design のパブリックベータ版がリリースされた。
Hot Design は Uno Platform Studio の一部として提供される Windows, macOS, Linux のデスクトップをはじめ、モバイル、Web ブラウザーでも動作するクロスプラットフォームなデザイナーで、ホットリロードやコードとの連携が可能となっている。
.NET AI Template Now Available in Preview - .NET Blog
https://devblogs.microsoft.com/dotnet/announcing-dotnet-ai-template-preview1/
Microsoft.Extensions.AI を使用した AI アプリケーションのプロジェクトテンプレートがプレビューリリースとなった。
このテンプレートでは RAG パターンを実装したチャットアプリケーションを実装でき、ローカルベクトルストアや Azure AI Search との連携、各種カスタマイズポイントが用意されている。
New Debugging and Profiling Features in Visual Studio (v17.13) - Visual Studio Blog
Visual Studio 2022 (v17.13) の新しいデバッグとプロファイル機能についての紹介。
- GitHub Copilot に支援されたデバッグ機能
- よりスマートな例外と変数の解析
- AI による並列スタックウィンドウ
- IEnumerable ビジュアライザーでの強化された編集可能な式
- プロファイル
- ネイティブコードをターゲットとした計測
- プロファイラーでの統合された非同期スタック
- CPU 使用率での色分けされたスイムレーンを使用した複数プロセスの解析
Unlock new possibilities for AI Evaluations for .NET - .NET Blog
https://devblogs.microsoft.com/dotnet/start-using-the-microsoft-ai-evaluations-library-today/
Microsoft.Extensions.AI.Evaluations がオープンソースで公開となった。
同時にサンプルコードや Azure DevOps 向けのプラグインも公開されたことについて触れている。
Great new productivity features in Visual Studio - Visual Studio Blog
https://devblogs.microsoft.com/visualstudio/great-new-productivity-features-in-visual-studio/
Visual Studio 2022 の新機能の紹介。
- ファイルエンコーディングのカスタマイズ
- 折り返しのインデント
- テーマ間でのフォントの保持
- 水平スクロールバーの改善
Another Set of Bug-Fix Updates for ReSharper and Rider 2024.3 Is Here | The .NET Tools Blog
https://blog.jetbrains.com/dotnet/2025/02/28/resharper-rider-2024-3-6/
ReSharper と Rider の 2024.3.6 がリリースされた。
ReSharper の xUnit v3 と .NET Framework の組み合わせの問題の修正や、Rider でのいくつかの不具合を修正している。
Godot 4.4, a unified experience – Godot Engine
https://godotengine.org/releases/4.4/
Godot 4.4 がリリースされた。
Godot 4.0 から C# 向けのパッケージが .NET 6 をターゲットとしていたが、EOL に伴い、次のバージョンから .NET 8 に引き上げる予定となっているとのこと。
dotnetfeed deprecation · Issue #345 · dotnet/announcements
https://github.com/dotnet/announcements/issues/345
プレビュー版のパッケージなどが公開されていたフィードの dotnetfeed.blob.core.windows.net
は数年前に非推奨となっていたが廃止となった。
このフィードは元々ほとんどがサポート外となっていたが、引き続き参照する必要がある場合は nuget.org でサポートされているものを探す必要がある。
リリース (GitHub)
- aws/aws-sdk-net
- Azure/azure-cosmos-dotnet-v3
- Azure/azure-sdk-for-net
- CommunityToolkit/Aspire
- dotnet/wcf
- googleapis/google-cloud-dotnet
- Google.Cloud.AIPlatform.V1-3.20.0, Google.Cloud.AIPlatform.V1-3.21.0, Google.Cloud.BigQuery.Reservation.V1-2.7.0, Google.Cloud.Bigtable.Admin.V2-3.23.0, Google.Cloud.Dialogflow.Cx.V3-2.22.0, Google.Cloud.Logging.Console-1.4.0, Google.Maps.FleetEngine.Delivery.V1-2.2.0, Google.Maps.FleetEngine.V1-2.2.0
- newrelic/newrelic-dotnet-agent
- open-telemetry/opentelemetry-dotnet
- open-telemetry/opentelemetry-dotnet-contrib
- unoplatform/uno
アーティクル、スライドなど
Cline+Sonnet3.7でC#のイベントソーシング+アクターモデルで新規プロジェクトを作るデモ
https://zenn.dev/tomohisa/articles/b2d1c3bf9bebf2
Cline と Claude Sonnet 3.7 を組み合わせて C# の新規プロジェクトを作成するデモ。
F# でテキストエディタ (kilo) を書く
https://zenn.dev/ame_utsu/articles/write-kilo-in-fsharp
F# で kilo (約1,000行のC言語コードで書かれたテキストエディタ) を実装してみた話
.NETのコンテナイメージをマルチプラットフォーム対応する - tech.guitarrapc.cóm
https://tech.guitarrapc.com/entry/2025/03/05/235900
.NET アプリケーションをマルチプラットフォーム (amd64, arm64 など) に対応したコンテナーイメージを作成する手順について。
SemanticKernel経由でAWS Bedrockを利用してみる。
https://qiita.com/karuakun/items/dc0c0193f0e48fd8050f
Semantic Kernel を使用して AI のモデルとして AWS Bedrock を利用する方法について。
Semantic Kernel の Multi Agents 機能を Durable Functions で使ってみる(実験)
https://zenn.dev/microsoft/articles/sk-durable-multi-agents
Semantic Kernel の Multi Agents と Azure Durable Functions を組み合わせて、永続化しつつ会話する仕組みを作ってみる方法について。
dotInsights | March 2025 | The .NET Tools Blog
https://blog.jetbrains.com/dotnet/2025/03/05/dotinsights-march-2025/
JetBrains の .NET 開発ツールに関する最新情報をまとめた dotInsights の 2025年3月号。
Panning & Zooming images in .NET MAUI - Petar Mishev - Medium
https://medium.com/@ravenexp0/panning-zooming-images-in-net-maui-4b3a0e2c73b7
.NET MAUI で画像のパンとズームを実装するいくつかの方法についての紹介。
非同期手続きの中でロックを掛ける
https://qiita.com/h084/items/533713acee092e9e69b4
非同期処理では lock を使用できないため、SemaphoreSlim を使用したロックを実現する方法について。
ASP.NET CoreとRLSで安全に開発できるマルチテナント共通基盤を実装する
https://zenn.dev/rsi_dev/articles/72b0e85caf3a19
ASP.NET Core と Entity Framework Core、 RLS (Row Level Security) を使用し、マルチテナント共通基盤を実装する方法について。
Creating an analyzer to detect infinite loops caused by ThreadAbortExceptions
https://andrewlock.net/creating-an-analyzer-to-detect-infinite-loops-caused-by-threadabortexception/
ThreadAbortException による無限ループを検出するアナライザーを作ることについて。
記事では .NET Framework で発生する ThreadAbortException とそれによって起きる無限ループについての説明、それを検出するアナライザーの実装について解説している。
.NET Aspire 9.1 Improves Dashboard Features
https://www.infoq.com/news/2025/03/net-aspire-91-dashboard/
.NET Aspire 9.1 でのダッシュボード機能の強化についての紹介。
C#でProtocolBuffersのプラグインを書く
https://qiita.com/AzuQiita/items/d73e67f280086e31a980
Protocol Buffers の protoc のプラグインを C# で実装する方法について。
【C#】.NET 10 Preview 1 キタ━━(゚∀゚)━━!!
https://qiita.com/abetakahiro123/items/2153df9795cd0f12da47
.NET 10 Preview 1 のいくつかの改善点についての紹介。
記事では TimeSpan.FromMilliseconds のオーバーロードや ZipArchive のパフォーマンス改善などにふれている。
Rust開発者がF#に触れてみた
https://qiita.com/Yosh31207/items/5c9f29b645d2c33cbfc9
Rust を使用している開発者が F# に触れてみた感想と細かい構文の違いなどについて。
Implement Phone verification, 2FA using ASP.NET Core Identity
https://damienbod.com/2025/03/03/implement-phone-verification-2fa-using-asp-net-core-identity/
ASP.NET Core Identity を使用して SMS 認証による多要素認証を実装する方法について。
Generic C# Methods with Enum Constraints for .NET
https://khalidabuhakmeh.com/generic-csharp-methods-with-enum-constraints-for-dotnet
Enum 制約を使ったメタデータを取得するコードの実装方法について。
C#定石 - サービス制御 - SQL Server
https://qiita.com/chai0917/items/cf40a34438a3f55aecb9
SQL Server の Windows サービス制御を C# で行う方法について。
記事では System.ServiceProcess.ServiceController を使用したサービスの制御方法について解説している。
Integrating Tailwind CSS in Blazor with Hot Reload - Andrei Shenets - Medium
https://medium.com/@shenets.andrei/integrating-tailwind-css-in-blazor-with-hot-reload-a8a1d043dc81
Tailwind CSS を Blazor で使用する際にホットリロードを有効にするための実装の紹介。
.NETで、ISO 8601の週番号を使うならISOWeekクラスを使う
https://qiita.com/RyotaMurohoshi/items/54a5d4f5eaa8fcc870f0
ISO 8601 の週番号を扱う方法について。.NET 10 での DateOnly のオーバーロードの追加についても触れている。
.NET9のWPFアプリを爆速で作る アップデート編
https://qiita.com/umbreon-nu/items/8105d55e6262118648e4
AutoUpdater.NET を使用したアップデート機能の実装の紹介。
時刻や天気や音量レベルを表示するデスクトップアプリをWPFで作ってみた
https://qiita.com/kerobot/items/e4c2a9255d3b16aa0b0f
時刻や天気、オーディオの音量レベルを表示するデスクトップアプリケーションを WPF で実装したことについて。
記事ではアプリケーション内で使用している技術要素について解説している。
Building and Debugging .NET Lambda applications with .NET Aspire (Part 1) | Amazon Web Services
https://aws.amazon.com/jp/blogs/developer/building-lambda-with-aspire-part-1/
.NET Aspire を使用して .NET による Lambda アプリケーションの実装とデバッグを行う方法について。
NuGetパッケージでソリューションテンプレートをリリースする方法
https://zenn.dev/tomohisa/articles/f20ec254186e0f
dotnet new
などで使用できるカスタムテンプレートを作成して、NuGet パッケージとしてリリースする方法について。
ライブラリ、リポジトリ、ツールなど
nenoNaninu/AspireExtensions.GrpcUI: gRPC UI support for .NET Aspire.
https://github.com/nenoNaninu/AspireExtensions.GrpcUI
.NET Aspire で gRPC UI をサポートするための拡張機能。
サイト、ドキュメントなど
Pro .NET Memory Management 2nd Edition
https://minidump.net/pro-net-memory-management/
Pro .NET Memory Management 第2版の紹介。
第2版では新しいメモリー関連の機能(リージョン、ピンされたオブジェクト、NonGC ヒープなど)についての記述が増えているとのこと。
ツイート
Live Preview is now available at design time, allowing real-time visualization of changes in your app UI.
— Mads Kristensen (@mkristensen) February 28, 2025
Hot Reload and other live UI tools can now be used in this manner as well, ensuring a seamless workflow.
Coming soon to Visual Studio... pic.twitter.com/JdMXSx5Fno
Introducing the Scalable Debugger Popup—a highly requested feature that dynamically adjusts popups such as DataTips' size based on editor’s zoom level! This improvement ensures a seamless and consistent experience between the Editor and Debugger. Try it out and give us feedback! pic.twitter.com/01zgLKk4uX
— Visual Studio Debugger (@VS_Debugger) March 5, 2025
We just updated the GitHub Codespaces quick start template for #dotnet to .NET 9! Blazor, .NET APIs, OpenAPI and Scalar API browser! All in a codespaces! https://t.co/NVTocQGwKp
— James Montemagno (@JamesMontemagno) February 28, 2025
Deep Dive
[NRBF] Remove [Experimental] by adamsitnik · Pull Request #113021 · dotnet/runtime
https://github.com/dotnet/runtime/pull/113021
System.Formats.Nrbf (BinaryFormatter のペイロードを操作するライブラリー) のアセンブリーから [Experimental]
を削除する PR。