Dela via


SYSLIB0005: Den globala sammansättningscache (GAC) stöds inte

.NET Core- och .NET 5- och senare versioner eliminerar begreppet global sammansättningscache (GAC) som fanns i .NET Framework. För att hjälpa utvecklare att komma bort från dessa API:er markeras vissa GAC-relaterade API:er som föråldrade, med början i .NET 5. Om du använder dessa API:er genereras en varning SYSLIB0005 vid kompileringstillfället.

Följande GAC-relaterade API:er är markerade som föråldrade:

Provisoriska lösningar

Om ditt program frågar egenskapen GlobalAssemblyCache kan du överväga att ta bort anropet. Om du använder GlobalAssemblyCache värdet för att välja mellan en "sammansättning i GAC"-flödet jämfört med en "sammansättning som inte finns i GAC"-flödet vid körning bör du överväga om flödet fortfarande är meningsfullt för ett .NET 5+-program.

Ignorera en varning

Om du måste använda föråldrade API:er kan du ignorera varningen i koden eller i projektfilen.

Om du bara vill förhindra en enda överträdelse lägger du till förprocessordirektiv i källfilen för att inaktivera och återaktiverar sedan varningen.

// Disable the warning.
#pragma warning disable SYSLIB0005

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

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

Om du vill ignorera alla SYSLIB0005 varningar i projektet lägger du till en <NoWarn> egenskap i projektfilen.

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

Mer information finns i Utelämna varningar.

Se även