.NET Framework で System.Text.Json を使っていて、次のようなエラーに遭遇していませんか?
JsonSerializer.Serialize("") // ← 実行時
例外がスローされました: 'System.IO.FileNotFoundException' (〇〇.exe の中)
ファイルまたはアセンブリ 'System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken='、またはその依存関係の 1 つが読み込めませんでした。指定されたファイルが見つかりません。
System.Text.Json 9.0 以降で発生する実行時エラーの原因と対処法は下記です
System.IO.FileNotFoundException
Message=ファイルまたはアセンブリ 'System.Threading.Tasks.Extensions, Version=4.2.0.1' が見つかりません。
Source=System.Text.Json
.NET Framework 上で System.Text.Json, Version=9.0.0.0 以降を使用すると、内部で System.Threading.Tasks.Extensions を参照しているようです
| 誤解 | 実際 |
|---|---|
| Visual Studio でビルド通ったから大丈夫? | ❌ 実行時にDLLがなければクラッシュします。 |
| System.Text.Json だけ入れればOK? | ❌ 依存DLL(特に System.Threading.Tasks.Extensions)も必要です。 |
Visual Studio プロジェクト内の「参照の追加」から System.Threading.Tasks.Extensionsの追加が必要です
ビルド後に、以下のファイルが bin\Debug\ または bin\Release\ に存在する確認:
System.Threading.Tasks.Extensions.dll
System.Text.Json を使う場合、以下の依存DLLが必要になることがあります:
| 項目 | 内容 |
|---|---|
| エラー原因 | System.Text.Json v9.0+ が System.Threading.Tasks.Extensions を要求 |
| 対処法 | NuGetで明示的にインストールし、DLLが出力されることを確認 |
| OS依存性 | Windows 11 にも DLL は含まれていない。必ず配布対象に含める |
このエラーは初心者だけでなく、中級者でも見落としやすいものです。
特に .NET Framework と .NET Core の挙動の違いが原因となるため、正しい依存関係の理解が重要です。
WinUI 3 / XAML の Grid.Width 設定方法
WinUI 3でMenuFlyoutをShowAtで表示する方法【コード付き解説】
MenuFlyout は WinUI 3 で便利なポップアップメニュー
WinUI 3の開発で混乱しがちな「空白のウィンドウ」と「空白のページ」の違い
PowerShellでMSIXアプリ(Storeアプリ)を起動する方法|AppUserModelIdとURIスキーム活用術
Microsoft Storeアプリ更新時のロールアウト設定まとめ
Microsoft純正の新しいコンソールエディタ「edit」が復活!| edit.exe インストール方法
Microsoft Authenticatorのオートフィル機能が2025年7月に終了
RuntimeBroker.exeとMsEdgeWebView2.exeとは?Windows 11のプロセスについて
PowerShellでGrapheme Clusterについて処理を考える
【Windows】Volta コマンドライン インストール | Node.jsをバージョン管理する方法
【C#】大容量ファイルを指定サイズ以下に分割する方法|.NET8対応コード付き
【C# .NET 8】ファイルから重複行を削除する2つの方法|Distinct vs HashSet
WinUI 3 ComboBoxの自作クラスバインドと選択イベント検出方法
System.Text.Json 9.0.0.0 で FileNotFoundException
【Anker Soundcore Liberty 4】イヤーピース紛失!代替品はAmazonで購入