はじめに
既存の.NET 8で作られたプロジェクトを.NET 9へ移行する際に少しハマったので、移行方法をまとめました。
結論
プロジェクトのターゲットフレームワークを.NET 8から.NET 9にするだけでなく、NuGetから関連ライブラリを9.x.x
にアップデートする必要があります。公式ドキュメントにもしっかり書いてありました。
https://learn.microsoft.com/ja-jp/aspnet/core/migration/80-90?view=aspnetcore-9.0&tabs=visual-studio
手順
最低限必要な手順を示します。
プロジェクトのターゲットフレームワークを変更
<TargetFramework>net9.0</TargetFramework>
.NET 9.0
に変更します。
パッケージのアップデート漏れ確認
インストールされているパッケージはプロジェクトによって異なると思いますが、Blazor
関連のパッケージバージョンを確認します。
下2つは9.0.0
になっていましたが、上3つは8.x.x
のままでした。この状態で起動すると、以下のエラーが発生します。
これらのライブラリを9.x.x
にアップデートすることで起動できるようになります。
おわりに
.NETの後方互換性に甘えると、基本的な内容でハマります。