例如,有一个Register按钮,当单击该按钮时,它会向Action Register发送ajax请求以进行数据库处理,然后发送验证邮件。
$.ajax({
url: "/Register",
type: 'POST',
error: function(xhr) {},
success: function(data) {
//after success, change the button color
}
});
[HttpPost]
public ActionResult Register() {
//database processing
......
//send email
//(this step takes long period of time, the button wait for long time to change the color, how can i solve this issue?)
}
答案 0 :(得分:0)
当您从网页调用长处理操作时,您不想等待它完成。所以你要做的是将长处理任务添加到队列并返回。您可以使用类似MSMQ的东西,或者您可以自己构建简单的队列机制,即在表中插入要发送的电子邮件的记录,然后让其他进程查看该表并发送电子邮件...