共用方式為


SDK 不再呼叫 ResolvePackageDependencies

先前,.NET SDK 會呼叫 ResolvePackageDependencies 目標,以產生 PackageDependenciesPackageDefinitions。 不過,該資料已可從不同的目標取得。 相反地,這兩個項目現在會從 PreprocessPackageDependenciesDesignTime 新增至設計階段建置快取,而且不會呼叫先前的目標。

導入的版本

.NET SDK 7.0.200

變更類型

此變更可能會影響來源相容性

先前的行為

已呼叫現有的 .NET SDK 目標,以取得可用套件的相關資訊。

新的行為

套件資訊會從 PreprocessPackageDependenciesDesignTime 新增至設計階段建置快取。 如果您相依於建置中的 PackageDependenciesPackageDefinitions,您會看到建置錯誤,例如找不到相依性

變更原因

在某些情況下,先前目標的效能特別慢。 具有大型 NuGet 相依性關係圖的解決方案會在解決方案載入、分支交換器之後,或在使用中央套件管理功能進行全解決方案變更時,看到更快的 IntelliSense。

如果您的建置相依於先前的行為,請將 <EmitLegacyAssetsFileItems>true</EmitLegacyAssetsFileItems> 屬性新增至專案以返回舊版行為。 我們預期這只會影響少數使用者。

<PropertyGroup>
  <EmitLegacyAssetsFileItems>true</EmitLegacyAssetsFileItems>
</PropertyGroup>