asp.net – 在调用异步方法时不使用等待来防止死锁
发布时间:2020-10-19 10:03:42 所属栏目:asp.Net 来源:互联网
导读:我需要调用从内部返回一个Task的方法 public override void OnActionExecuting(ActionExecutingContext filterContext) 它不会让我使这个方法异步它抛出以下 An asynchronous module or handler completed while an asynchronous operation was still
我需要调用从内部返回一个Task的方法 public override void OnActionExecuting(ActionExecutingContext filterContext) 它不会让我使这个方法异步它抛出以下
当打电话时 entityStorage.GetCurrentUser().Result 我陷入僵局如何避免这种情况? 我一直在玩弄它,出来的东西就像 entityStorage.GetCurrentUser().Result.ConfigureAwait(false).GetAwaiter().GetResult(); 但这不行.我该怎么做?我的解决方案将需要使用ASP.NET 4和Async Targetting Pack,我不能使用ASP.NET 4.5作为部署到Azure. 解决方法由于等待只是语法糖为编译器重写一个延续为您,最“直接”的路径将是采取任何代码将遵循您的等待,并使其成为一个ContinueWith调用.所以,像: entityStorage.GetCurrentUser().ContinueWith(t => { // do your other stuff here }); (编辑:莱芜站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- NHibernate中对同一个对象的Lazyload要设置一致
- asp.net-mvc – 当Bundling EnableOptimizations
- asp.net+Ajax 文本文件静态分页实现代码
- ASP.NET MVC删除操作方法中的查询字符串
- ASP.Net – AJAX UpdatePanel中的Javascript
- asp.net-mvc – ASP.NET MVC获取具有特定配置文件
- asp.net-mvc-3 – ASP.net MVC – 模型绑定不包括
- asp.net-mvc – 使用输出缓存和其他动作过滤器
- asp.net-mvc – 为什么我得到一个“无法更新Enti
- 如何在asp.net会员中手动更改密码?
热点阅读