共用方式為


SYSLIB0005:不支援全域組件快取 (GAC)

.NET Core 和 .NET 5 及更新版本消除了存在於 .NET Framework 中的全域組件快取 (GAC) 概念。 為了協助讓開發人員遠離這些 API,從 .NET 5 開始,某些 GAC 相關 API 會標示為已淘汰。 使用這些 API 會在編譯時期產生警告 SYSLIB0005

下列 GAC 相關 API 會標示為已淘汰:

因應措施

如果您的應用程式查詢 GlobalAssemblyCache 屬性,請考慮移除呼叫。 如果您使用 GlobalAssemblyCache 值來選擇「GAC 中的組件」流程與執行階段「不在 GAC 中的組件」流程,請重新考慮流程對 .NET 5+ 應用程式是否仍然有意義。

隱藏警告

若您必須使用已淘汰的 API,您可以在程式碼或專案檔中隱藏警告。

若要只隱藏單一違規,請將前置處理器指示詞新增至原始程式碼檔案,以停用並重新啟用警告。

// Disable the warning.
#pragma warning disable SYSLIB0005

// Code that uses obsolete API.
// ...

// Re-enable the warning.
#pragma warning restore SYSLIB0005

若要隱藏專案中的所有 SYSLIB0005 警告,請將 <NoWarn> 屬性新增至專案檔。

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
   ...
   <NoWarn>$(NoWarn);SYSLIB0005</NoWarn>
  </PropertyGroup>
</Project>

如需詳細資訊,請參閱隱藏警告

另請參閱