是否可以在Umbraco SurfaceController(和UmbracoApiController)中使用异步操作
我尝试了以下代码
public async Task< ActionResult> HandleLogin(LoginViewModel model)
{
await Task.Delay(1000);
return PartialView("Login", model);
}
Run Code Online (Sandbox Code Playgroud)
虽然在调用动作时它被正确编译,但是一旦命中await,动作似乎就会返回,并返回一个字符串
System.Threading.Tasks.Task`1 [System.Web.Mvc.ActionResult]
控制器当然继承自SurfaceController,我想知道这是不是问题?
如果这不可能,是否有任何解决方法来实现异步操作行为?
感谢任何帮助!
我正在组装一个简单的asp.net Web控件,由于ajax表单post将记录插入到MSQL数据库中.
包含此控件的页面可能会在很短的时间内收到数千次点击,我担心打开数据库连接,插入记录然后关闭每个请求的连接的性能问题.
我遇到的一个解决方案是让Web控件将消息放入MSMQ队列,并让服务器上的Windows服务定期读取队列并执行批量插入.
考虑到Web和数据库服务器在同一台机器上运行,这听起来像是一种合理的架构.听起来有必要吗?
从我在数据库中看到的,使用MSMQ的大多数好处都与弹性而不是性能有关,所以我可能会咆哮错误的树.
非常感谢任何建议
非常感谢
皮特