asp.net-mvc-4 – 从ASP.NET MVC Action调用ConfigureAwait
|
我正在进行演示,并认为以下内容将失败,因为ActionResult不会在正确的上下文中返回.我加载测试它与VS并没有错误.我已经调试了,知道它是切换线程.所以似乎是合法的代码. ASP.NET不关心客户端应用程序的上下文或线程吗?如果是这样,AspNetSynchronizationContext的目的是什么?我不觉得在操作本身放置一个ConfigureAwait.有些东西似乎错了.有人可以解释吗 public async Task<ActionResult> AsyncWithBackendTest()
{
var result = await BackendCall().ConfigureAwait(false);
var server = HttpContext.Server;
HttpContext.Cache["hello"] = "world";
return Content(result);
}
解决方法ASP.NET没有许多客户端应用程序需要“UI线程”(由于下面的UI框架).该上下文不是关于线程亲和性,而是用于跟踪页面进度(以及其他事情,例如携带请求的安全上下文)Stephen Toub mentions this in an MSDN article:
Stephen Cleary’s article from last year提供了有关同步上下文的更多细节. 图4特别表明它没有WinForms / WPF的“特定线程”行为,但整个事情是一个很好的阅读.
(编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 如何将Web应用程序项目转换为类库项目
- Autofac和ASP.NET Web API ApiController
- asp.net-mvc-3 – ASP.net MVC路由与可选的第一个参数
- 在ASP.NET中使用新的会话ID打开一个新的浏览器窗口
- asp.net – 在.NET 4下编译时出现“具有相同密钥的条目已存
- asp.net-mvc – .Net 4.5.1框架的maxRequestLength
- 为什么我不能在我的代码asp.net c#中使用app_code中的代码文
- asp.net从指定文化获取.resx的所有资源(ResourceManager.Ge
- IIS – CPU使用率在几天内逐渐增加,直到100%
- asp.net-mvc – 使用MVC和WebAPI避免使用Resharper web.con
- asp.net mvc – asp.net mvc Html.ActionLink()保
- asp.net-mvc-3 – 在F#中的ViewBag动态对象上设置
- asp.net-mvc – 将参数传递给telerik asp.net mv
- asp.net – 通过IP地址在IIS 6中调节Bandands
- asp.net-mvc – 自定义模型绑定,模型状态和数据注
- 当使用SignalR和传输模式长轮询时,Asp.net会话永
- asp.net-mvc – 应用程序级排队/网站流量管理
- asp.net – Visual Studio和C#的竞争对手
- asp.net – 具有FormsAuthentication的跨域Cooki
- 在IIS 7.5上运行的ASP.NET应用程序上强制Https
