Start Debugging

タグ: dotnet

388 件 · ページ3/39

2026-09-21 aspirekafkadotnet
Aspire 13.5.4 で Kafka ヘルスチェックがプローブのたびに producer をリークしなくなりました
Aspire 13.5.4 より前は、AddKafka リソースに対する AppHost のヘルスチェックが実行のたびに新しい Confluent の producer を作成し、誰も破棄しませんでした。そのためポーリングスレッドが積み上がり、AppHost が CPU を消費していました。この修正と、その背後にある HealthCheckRegistration.Factory の落とし穴は、独自のヘルスチェックにも当てはまります。
MessagePack 3.1.9 と 2.5.303、32 KiB のペイロードが 120 MiB を確保する問題を修正
CVE-2026-92707: ネストした MessagePack の配列ヘッダーが同じ残りバイト数を使い回して長さチェックを通過できたため、object へのデシリアライズがペイロードサイズの数千倍のアロケーションを引き起こしていました。この修正の内容、修正前後の検証、そして .NET 8 から 11 RC 1 までの SignalR アプリで直接のパッケージ固定が必要な理由を解説します。
Polly 8.8 は独自の IOptionsMonitor からレジリエンスパイプラインをリロードできます
Polly 8.8.0 で EnableReloadsWithMonitor が追加され、DI に登録されていない機能フラグやリモート設定のモニターからレジリエンスパイプラインをホットリロードできるようになりました。検証コードで再構築の様子を示すとともに、落とし穴を 1 つ紹介します。context.GetOptions は引き続き DI のモニターを読むため、既定値が返されます。
.NET 11 における Microsoft.Data.SqlClient と System.Data.SqlClient の比較
Microsoft.Data.SqlClient を使ってください。System.Data.SqlClient は非推奨で、触れる型すべてに CS0618 が出ます。さらに .NET 8 が 2026-11-10 にサポート終了を迎えると .NET 向けアセットが削除されます。その日は .NET 11 のリリース日でもあります。実測した機能差、マイグレーションを壊す Encrypt の既定値、そして 7.0 でのパッケージ分割について解説します。
2026-09-17 mstesttestingcsharp
MSTest 4.4.1 が、4.4.0 で C# 14 未満において壊れた CS0121 のあいまいな Assert 呼び出しを修正
MSTest 4.4.0 は Assert.Contains と Assert.DoesNotContain に Span<T> と ReadOnlySpan<T> のオーバーロードを追加しました。その結果、net8.0、net9.0、または C# 14 未満のあらゆるプロジェクトで、ごく普通の配列や文字列のアサーションが CS0121 で失敗するようになりました。2026-09-16 に公開された MSTest 4.4.1 は、配列に完全一致するオーバーロードと制約付きのフォワーダーを追加します。ただし、明示的なジェネリック引数を指定する 2 つの呼び出し形式は依然として失敗します。
.NET 11 の Process.Run と Process.Start: どちらを使うべきか
ツールを起動して終了の仕方だけが気になるなら Process.Run を使います。1 回の呼び出しで済み、タイムアウトで子プロセスを強制終了し、シグナルを含む ProcessExitStatus を返します。stdin への書き込み、出力を届いたそばから読む処理、UseShellExecute、プロセスツリー全体の強制終了など、Process オブジェクトが必要な場合は Process.Start を使い続けます。
2026-09-16 dotnetdotnet-11jit
.NET 11 の JIT がジェネリック仮想メソッドを非仮想化し、アロケーションも一緒に消える
Stephen Toub の Performance Improvements in .NET 11 では、ジェネリック仮想メソッド呼び出しが 6.7 ns / 24 バイトから 1.8 ns / アロケーションゼロまで下がっています。3 本の RyuJIT のプルリクエストが、.NET で最も不透明だったディスパッチのインライン化を可能にしました。
前へ 次へ