Start Debugging

.NET、C#、EF Core、MAUI、Blazor、Flutter に関する、実際にリリースする開発者向けの日々のノート。

2026-10-27 flutterflutter-webdart
API キーを公開せずに Flutter Web アプリから OpenAI API を呼び出す方法
Flutter Web ビルドにコンパイルしたものは、--dart-define の値も含めて、すべて平文でブラウザーに配信されます。安全な方法は、キーを保持し、ユーザーを認証し、モデルを固定し、Responses API の SSE をストリーミングで返す小さなバックエンドプロキシだけです。Flutter 3.44、Dart 3.12、http 1.6 で検証した Dart shelf プロキシと Flutter クライアントの完全なコードを紹介します。
2026-10-27 csharpdotnetperformance
C# でヒープ割り当てなしに 2 つのコレクションを並行して反復処理する方法
Enumerable.Zip は呼び出しごとに 144-208 バイトを割り当て、単純なループより約 10 倍遅く動作します。配列やリストであれば、同じ長さにスライスした 2 つの span に対する for ループが割り当てゼロで最速の選択肢です。foreach 構文を使いたい場合は、小さな ref struct の zip 列挙子でその 25% 以内に収まります。.NET 10.0.10 と .NET 11 RC 3 で計測しました。
2026-10-27 pollyresiliencedotnet
Polly 8.8.1: サーキットブレーカーが最初の呼び出し元の AsyncLocal 値を保持し続けなくなりました
Polly.Core 8.8.1 はサーキットブレーカーのバックグラウンドループを ExecutionContext.SuppressFlow の下で開始するため、長寿命のパイプラインがそれを構築した側の AsyncLocal 値を保持しなくなりました。15 行の再現コードで 8.8.0 のリークと 8.8.1 の修正を示します。
2026-10-26 ef-coreef-core-10ef-core-11
1つの EF Core プロジェクトで複数の DbContext ごとにマイグレーションフォルダーを分ける方法
DbContext ごとに --output-dir を一度だけ指定すれば、以降のマイグレーションは同じフォルダーと名前空間に作成されます。既定のレイアウトが偏る理由、共有フォルダーで発生する CS0111 の衝突、既存マイグレーションの移動方法、履歴テーブルを分けるべきタイミングを解説します。
ページ 1 / 91