Tengo que llamar a un método que devuelve un Task
desde dentroLa prevención de un punto muerto cuando se llama a un método asíncrono sin utilizar esperan ser
public override void OnActionExecuting(ActionExecutingContext filterContext)
no va dejar que me hacen que este método asíncrono que arroja el siguiente
Un módulo o controlador asíncrono completado mientras que una operación asíncrona todavía estaba pendiente.
y al llamar
entityStorage.GetCurrentUser().Result
llego a un punto muerto. ¿Cómo puedo evitar esto?
que han estado jugando un rato con él viene con cosas como
entityStorage.GetCurrentUser().Result.ConfigureAwait(false).GetAwaiter().GetResult();
Pero esto no está funcionando. ¿Cómo puedo hacerlo? Mi solución deberá funcionar con ASP.NET 4 y el Async Targetting Pack, no puedo usar ASP.NET 4.5 mientras estoy implementando en Azure.
Encontraron una respuesta aquí http://stackoverflow.com/a/5097066/168012 si alguien tiene una mejor solución, por favor comparta – Tom
¿Se deriva de 'AsyncController' en lugar de' Controller'? –
Por favor, [vote aquí] (https://aspnet.codeplex.com/workitem/9582) para que el equipo de MVC agregue compatibilidad con los filtros de acción 'async'. –