案例 1
無法讀取 『ProjectFile』 的項目資訊。 項目檔可能無效或遺失還原所需的目標。
問題
項目檔存在,但未提供還原資訊。 請確定您使用 新的項目系統或舊版專案系統開啟專案。
解決方法
命令列
從命令行中,這可能表示檔案已損毀或 NuGet.targets 未匯入。
若要匯 NuGet.targets入 ,通常建議匯入 Microsoft.Common.targets。
若要使用 .NET CLI 還原方案中的專案,請使用:
dotnet restore MySolution.sln
Visual Studio
在 Visual Studio 中,錯誤可能表示目標不會匯入類似命令行案例。
錯誤也可能表示專案已卸除。
如果您使用 Visual Studio 2019 或更新版本,NuGet 就能夠針對卸除的項目重複使用先前還原中的成品。 為了讓此案例能夠運作,您必須確定解決方案中目前的所有專案在 Visual Studio 中載入之前,已從命令行還原。
或者,重載專案。
案例 2
無效的目標 Framework 'net.6.0'
問題
項目檔存在,但指定無效的目標架構: 'net.6.0'。
這可能是因為錯字或使用不支援的格式所造成。
解決方法
更新項目檔以使用有效的目標架構。
在此情況下,請將 取代 'net.6.0' 為 'net6.0' (不含額外的點)。
如需支持架構及其正確格式的完整清單,請參閱 .NET 目標 Framework 檔。
案例 3
找不到「ProjectFile」的專案資訊。 如果你用的是 Visual Studio,可能是因為專案已經卸載或不屬於目前解決方案,所以請從命令列執行還原。 否則,專案檔案可能無效或缺少還原所需的目標。
問題
專案會參考另一個專案(例如透過 ), <ProjectReference>而該專案目前解決方案中未包含。
NuGet 找不到該專案的還原資訊,因為它並未作為解決方案的一部分載入。
解決方法
命令列
從命令列執行還原,直接針對解決方案檔案或專案檔案:
dotnet restore MySolution.sln
即使不是所有專案都載入,從命令列執行還原也能運作,因為它會直接讀取專案檔案,而不是依賴解決方案載入狀態。
Visual Studio
- 把缺失的專案加入目前的解決方案,然後重新載入解決方案或重新執行還原。
- 如果你有意將專案排除在解決方案中,建議先執行一次命令列還原,再依賴 Visual Studio 內建的還原功能。 Visual Studio 接著可以將還原的產物重用到被排除的專案。