Partilhar via


Erro do compilador WFO5002

'System.Windows.Forms.Form.ShowAsync' é apenas para fins de avaliação e está sujeito a alterações ou remoção em atualizações futuras. Suprima este diagnóstico para prosseguir.

Este erro do compilador é gerado ao usar qualquer um dos seguintes métodos:

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

A API assíncrona do Windows Forms é atualmente experimental e está sujeita a alterações. Esse erro é gerado para que você entenda as implicações de escrever código que usa essas APIs. O erro deve ser suprimido para continuar. Para obter mais informações sobre esta API, veja formulários assíncronos.

Exemplo

O exemplo a seguir gera WFO5002:

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

Para corrigir este erro

Suprima o erro e habilite o acesso à API por um dos seguintes métodos:

  • Defina a severidade da regra no ficheiro .editorConfig.

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

    Para obter mais informações sobre arquivos de configuração do editor, consulte Arquivos de configuração para regras de análise de código.

  • Adicione o seguinte PropertyGroup ao arquivo de projeto para suprimir o erro:

    <PropertyGroup>
        <NoWarn>$(NoWarn);WFO5002</NoWarn>
    </PropertyGroup>
    
  • Suprima o erro no código com a diretiva #pragma warning disable WFO5002:

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