public override void OnActionExecuting(ActionExecutingContext filterContext)
從調用返回一個Task
的方法它不會讓我做這個方法異步它拋出以下
異步模塊或處理程序在異步操作仍未完成時完成。
,並呼籲
entityStorage.GetCurrentUser().Result
當我得到一個僵局。我怎樣才能避免這種情況?
我一直在玩弄它的到來了東西一樣
entityStorage.GetCurrentUser().Result.ConfigureAwait(false).GetAwaiter().GetResult();
但是,這是行不通的。我該怎麼做?我的解決方案需要使用ASP.NET 4和Async Targetting Pack,我不能在部署到Azure時使用ASP.NET 4.5。
在這裏找到了答案http://stackoverflow.com/a/5097066/168012如果有人有更好的解決方案,請分享 – Tom 2012-08-09 16:56:50
您是從'AsyncController'而不是'Controller'派生的嗎? – 2012-08-10 00:53:27
請[在此投票](https://aspnet.codeplex.com/workitem/9582)爲MVC團隊添加對「異步」動作過濾器的支持。 – 2013-06-11 14:21:19