Dela via


Kompilatorfel WFO5002

"System.Windows.Forms.Form.ShowAsync" är endast i utvärderingssyfte och kan komma att ändras eller tas bort i framtida uppdateringar. Ignorera den här diagnostiken för att fortsätta.

Det här kompilatorfelet genereras när du använder någon av följande metoder:

  • Form.ShowAsync
  • Form.ShowDialogAsync
  • TaskDialog.ShowDialogAsync

Windows Forms asynkrona API är för närvarande experimentellt och kan komma att ändras. Det här felet genereras så att du förstår konsekvenserna av att skriva kod som använder dessa API:er. Felet måste undertryckas för att fortsätta. Mer information om det här API:et finns i Async-formulär.

Exempel

Följande exempel genererar WFO5002:

private async void button1_Click(object sender, EventArgs e)
{
    Form1 newDialog = new();
    await newDialog.ShowAsync();
}

Så här åtgärdar du det här felet

Utelämna felet och aktivera åtkomst till API:et med någon av följande metoder:

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

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

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

  • Lägg till följande PropertyGroup i projektfilen för att förhindra felet:

    <PropertyGroup>
        <NoWarn>$(NoWarn);WFO5002</NoWarn>
    </PropertyGroup>
    
  • Utelämna felet i koden med #pragma warning disable WFO5002-direktivet:

    private async void button1_Click(object sender, EventArgs e)
    {
        Form1 newDialog = new();
    #pragma warning disable WFO5002
        await newDialog.ShowAsync();
    #pragma warning restore WFO5002
    }