Freigeben über


Compilerfehler WFO5002

Eingeführt in Version: .NET 9

System.Windows.Forms.Form.ShowAsync dient nur zu Auswertungszwecken und unterliegt Änderungen oder Entfernungen in zukünftigen Updates. Unterdrücken Sie diese Diagnose, um fortzufahren.

Dieser Compilerfehler wird bei Verwendung einer der folgenden Methoden generiert:

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

Die asynchrone Windows Forms-API ist derzeit experimentell und kann geändert werden. Dieser Fehler wird generiert, sodass Sie die Auswirkungen des Schreibens von Code verstehen, der diese APIs verwendet. Der Fehler muss unterdrückt werden, um den Vorgang fortzusetzen. Weitere Informationen zu dieser API finden Sie unter Async-Formulare.

Hinweis

Dieser Compilerfehler gilt nicht mehr ab .NET 10.

Beispiel

Das folgende Beispiel erzeugt WFO5002:

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

So beheben Sie diesen Fehler

Führen Sie ein Upgrade auf .NET 10 oder höher durch, wobei dieses Feature nicht mehr als experimentell betrachtet wird.

– oder –

Unterdrücken Sie den Fehler, und aktivieren Sie den Zugriff auf die API mithilfe einer der folgenden Methoden:

  • Legen Sie den Schweregrad der Regel in der .editorConfig-Datei fest.

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

    Weitere Informationen zu Editorkonfigurationsdateien finden Sie unter Konfigurationsdateien für Codeanalyseregeln.

  • Fügen Sie das folgende PropertyGroup zu Ihrer Projektdatei hinzu:

    <PropertyGroup>
        <NoWarn>$(NoWarn);WFO5002</NoWarn>
    </PropertyGroup>
    
  • Unterdrücken Sie im Code mit der #pragma warning disable WFO5002-Anweisung:

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