Avatar ·

¿Cómo llamar a un método async desde uno sync en C#?

¡Hola a todos! Soy un desarrollador C# principiante y me encontré con un problema. Tengo una aplicación WPF en la que uso Entity Framework para trabajar con la base de datos. Quiero usar métodos async como `ToListAsync()`, `SaveChangesAsync()` para no bloquear el hilo de la UI. Sin embargo, tengo un método sync existente que se llama desde una biblioteca externa (por ejemplo, un manejador de evento de botón que no soporta async). Dentro de este método necesito obtener datos de la base de datos. Intento llamar al método async `GetCustomersAsync()` de la siguiente manera: ```csharp public async Task> GetCustomersAsync() { using (var db = new MyDbContext()) { return await db.Customers.ToListAsync(); } } public void ButtonClickHandler(object sender, EventArgs e) { // ¡Error! No se puede usar await en un método sync var customers = await GetCustomersAsync(); } ``` Entiendo que no se puede simplemente agregar `await` en