NETSDK1240: De huidige .NET SDK-functieband wordt stopgezet

Deze waarschuwing geeft aan dat de functieband van de .NET SDK die wordt gebruikt om uw project te bouwen geen nieuwere release heeft, ook al bestaat er een nieuwere SDK in een andere functieband op dezelfde primaire versie. Het volledige waarschuwingsbericht is vergelijkbaar met het volgende voorbeeld:

NETSDK1240: De huidige .NET SDK (<version>) heeft geen nieuwere versie in zijn functiegroep. Bijwerken naar versie <versie>: https://dotnet.microsoft.com/download

Een .NET SDK-versie heeft het formulier <major>.<minor>.<feature-band><patch> (bijvoorbeeld 8.0.404, waarbij 4xx de functieband is). Wanneer het aanbevolen onderhoudspad naar een andere functieband wordt verplaatst, stopt de oudere band met het ontvangen van updates. Als u de waarschuwing wilt oplossen, installeert u de aanbevolen .NET SDK-versie van https://dotnet.microsoft.com/download en werkt u uw global.json (indien aanwezig) bij om deze te selecteren.

Hoe de controle werkt

De controle is opt-in en wordt alleen uitgevoerd wanneer de MSBuild-eigenschap CheckSdkVulnerabilities is ingesteld op true:

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <CheckSdkVulnerabilities>true</CheckSdkVulnerabilities>
  </PropertyGroup>
</Project>

U kunt /p:CheckSdkVulnerabilities=true ook doorgeven aan een .NET CLI-opdracht, zoals dotnet build.

De .NET CLI vernieuwt een lokale cache met SDK-releasemetagegevens op de achtergrond onder ~/.dotnet/sdk-vulnerability-cache/. Standaard wordt de cache maximaal elke 24 uur vernieuwd. Als u dat interval wilt wijzigen, stelt u DOTNET_SDK_VULNERABILITY_CHECK_INTERVAL_HOURS in. De MSBuild-controle leest alleen die cache; er worden geen netwerkoproepen uitgevoerd tijdens de build.

De waarschuwing onderdrukken

De waarschuwing onderdrukken zonder de SDK bij te werken:

  • Toevoegen NETSDK1240 aan NoWarn:

    <NoWarn>$(NoWarn);NETSDK1240</NoWarn>
    
  • Ingesteld CheckSdkVulnerabilities op false (de standaardinstelling) om NETSDK1238, NETSDK1239 en NETSDK1240 uit te schakelen.

  • Stel de DOTNET_SDK_VULNERABILITY_CHECK_DISABLE omgevingsvariabele in op true.

Zie ook