Start Debugging

タグ: how-to

39 件 · ページ1/4

2026-08-24 flutterdarttesting
withClock クロージャなしで Flutter ウィジェットを固定時刻でテストする方法
testWidgets の中では package:clock のアンビエント clock はすでに偽物ですが、開始時刻はテストが始まった実時刻になります。flutter_test_config.dart から独自の AutomatedTestWidgetsFlutterBinding を導入し runTest をオーバーライドすれば、スイート全体で時刻を固定できます。Flutter 3.44.2、clock 1.1.2、fake_async 1.3.3 で検証しました。
.NET MAUI 11 でモーダルウィンドウを表示する方法
.NET MAUI 11 では、まったく異なる2つのものが「モーダルウィンドウ」と呼ばれています。PushModalAsync は全プラットフォームでモーダルページを提供します。オーナーウィンドウを無効化する本物の OS ウィンドウには MAUI の API がまったく存在しないため、Windows で実際に動作する WinUI の OverlappedPresenter.IsModal と Win32 のオーナーハンドルによる相互運用、そして Mac Catalyst での代替手段を解説します。
ソース生成された System.Text.Json のシリアル化を type info resolver のモディファイアーでカスタマイズする方法
.NET 11 でソース生成された JsonSerializerContext に JsonTypeInfo のモディファイアーを付ける方法です。new MyContext(options) が黙って破棄する理由、動作する WithAddedModifier の構成、失う高速パス(実測値つき)、そしてモディファイアーを無効化する命名ポリシーの落とし穴を扱います。
Aspire が登録する既定のレジリエンスハンドラーを上書きする方法
Aspire の AddServiceDefaults はすべての HttpClient に標準レジリエンスハンドラーを適用します。AddStandardResilienceHandler をもう一度呼んでも置き換えにはならず、2 つ目のハンドラーが積み重なります。実際に上書きする 3 つの方法、どこにも書かれていないオプション名 -standard、そして単に削除しただけで引き継いでしまう無限タイムアウトを解説します。
EF Core 11 のマイグレーションでデータを失わずにテーブル名を変更する方法
テーブル名を変更した場合、EF Core は RenameTable を生成しますが、エンティティクラスの名前を変更した場合は DropTable と CreateTable を生成します。この2つを見分ける方法、クラス名変更のコストをゼロにする ToTable のテクニック、そしてデータを黙って入れ替えてしまう列名変更のバグを解説します。
次へ