Dela via


Kompilatorvarning WFDEV006

version släppt: .NET 10 Preview 1

ContextMenu, DataGrid, MainMenu, Menu, StatusBar, ToolBar är föråldrade. De tillhandahålls för binär kompatibilitet med .NET Framework.

Från och med .NET 10 tillhandahålls vissa kontroller för binär kompatibilitet med .NET Framework, men de är markerade som föråldrade och är inte avsedda att användas direkt från koden. De kan inte instansieras. Om du refererar till någon av följande kontroller genereras en varning WFDEV006 vid kompileringstillfället:

I tidigare versioner av .NET skulle hänvisning till ett .NET Framework-bibliotek som använde dessa typer leda till ett undantagsfel eftersom .NET inte angav dessa typer. Från och med .NET 10 finns dessa typer för att förbättra kompatibiliteten med äldre .NET Framework-bibliotek som inte kan uppgraderas.

Övergångslösning

Ersätt referenser till dessa kontroller med deras nyare motsvarigheter:

Ursprunglig kontroll Ny kontroll
ContextMenu ContextMenuStrip
DataGrid DataGridView
MainMenu MenuStrip
Menu ToolStripDropDown eller ToolStripDropDownMenu
StatusBar StatusStrip
ToolBar ToolStrip

Undertryck en varning

Om du måste referera till föråldrade API:er, till exempel för att köra reflektion på dem, kan du utelämna varningen i koden eller i projektfilen. Dessa typer kan dock inte instansieras och tillhandahålls endast för kompatibilitet.

Ignorera varningen med någon av följande metoder:

  • Ange allvarlighetsgraden för regeln i filen .editorConfig.

    [*.{cs,vb}]
    dotnet_diagnostic.WFDEV006.severity = none
    

    Mer information om redigeringskonfigurationsfiler finns i Konfigurationsfiler för kodanalysregler.

  • Lägg till följande PropertyGroup i projektfilen:

    <PropertyGroup>
        <NoWarn>$(NoWarn);WFDEV006</NoWarn>
    </PropertyGroup>
    
  • Undertryck i kod med #pragma warning disable WFDEV006-direktivet.

Mer information finns i Så här utelämnar du kodanalysvarningar.