[C#] 無法載入檔案或組件 或其相依性的其中之一。 找到的組件資訊清單定義與組件參考不符。 (發生例外狀況於 HRESULT: 0x80131040)

如提,當專案使用 .NET Framework 時,多少會出現這個問題,尤其是多個專案使用同個套件,如果調整版本時,連帶的依賴套件也會變動,就會造成父子專案的套件版本不同,以下紀錄解決方式。

以下附上情境:
 System.IO.FileLoadException: 無法載入檔案或組件 'System.Text.Json, Version=8.0.0.4, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' 或其相依性的其中之一。 找到的組件資訊清單定義與組件參考不符。 (發生例外狀況於 HRESULT: 0x80131040)

分析:  
    1. 系統認為套件要使用 System.Text.Json, Version=8.0.0.4
    2. 但專案中使用的套件不是 System.Text.Json, Version=8.0.0.4

解決方式:
    1. 先確認 bin 裡面的套件版本是多少 。(看起來是 7.0.0)        


    2. 檢查 App.Config 或是 Web.Config 的套件版本是多少。(看起來是 8.0.4)        


    3. 檢查 .csproj 的套件版本是多少。(看起來是 8.0.4)  
        
    4. 把 App.Config, Web.Config, .csproj 的版本都改成 7.0.0

    5. 清除方案 > 重建方案




    



留言

這個網誌中的熱門文章

[Cloud CICD] 後端篇 - .Net8 WebApi, Github Action, Azure App Service

[Cloud CICD] 前端篇 - Vue3, Github Action, Azure Static Web App