Compartir a través de


Error del compilador WFO5002

"System.Windows.Forms.Form.ShowAsync" es solo para fines de evaluación y está sujeto a cambios o eliminación en futuras actualizaciones. Suprima este diagnóstico para continuar.

Este error del compilador se genera al usar cualquiera de los métodos siguientes:

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

La API asincrónica de Windows Forms es actualmente experimental y está sujeta a cambios. Este error se genera para que comprenda las implicaciones de escribir código que usa estas API. El error debe suprimirse para continuar. Para obtener más información sobre esta API, consulte Formularios asincrónicos.

Ejemplo

El ejemplo siguiente genera WFO5002:

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

Para corregir este error

Suprima el error y habilite el acceso a la API mediante cualquiera de los métodos siguientes:

  • Establezca la gravedad de la regla en el archivo .editorConfig .

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

    Para obtener más información sobre los archivos de configuración del editor, consulte Archivos de configuración para reglas de análisis de código.

  • Agregue lo siguiente PropertyGroup al archivo de proyecto para suprimir el error:

    <PropertyGroup>
        <NoWarn>$(NoWarn);WFO5002</NoWarn>
    </PropertyGroup>
    
  • Suprima el error en el código con la #pragma warning disable WFO5002 directiva :

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