PR

.NET MAUI VS2026 ‘FileSystem.AppDataDirectory’ で CS0104 のエラー

エラー表示は下記の通り。
FileSystem.AppDataDirectory error CS0104: ‘FileSystem’ は、’Microsoft.Maui.Storage.FileSystem’ と ‘System.IO.FileSystem’ 間のあいまいな参照です

このような場合、先ずはエラーメッセージを素直に読み対応することが原則。
FileSystem.AppDataDirectory の内の FileSystem という記述が、Microsoft.Maui.Storage と System.IO の両方に存在し、どっちを採用するのかというエラーと読める。
.NET MAUI での定義を使おうとしているので、
Microsoft.Maui.Storage.FileSystem.AppDataDirectory
と訂正するが、エラーは消えない。
プロジェクト内の他のコードで FileSystem は使われていないか、using句で、System.IOを指定していないか確認するも、他の箇所でも使われていない。


ソースコードは恐らく合っているに関わらず、Visual Studioは、エラーメッセージを出し続けている。これも恐らくだが、どこかのキャッシュ,一時ファイルに、ビルド済み中間ファイル(obj/bin)” が壊れた状態で残っている可能性が高い。Visual Studio .NET MAUIでは、珍しいことではないよう。そう言えば、Visual Studio 2022でも似た現象はあった。VSの再起動だけで改善されたりもしていた。今回もVSの再起動を試したが、これだけでは現象は同じ。
それで、次のことを試してみた。
プロジェクトフォルダの中の .obj .bin のフォルダを消す。(Windows11のエクスプローラーから、両フォルダを削除する)
ソリューションフォルダの中の .vsフォルダを消す。
Visual Studio の ComponentModelCacheフォルダ を消す。
C:\Users\(User Name)\AppData\Local\Microsoft\VisualStudio\17.0_xxxxxxxx\ComponentModelCache

Visual Studio の再起動、ソリューションの ビルド

で、エラーは消えた。やはり、ソースコードは合っていた。

コメント