首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何调用另一个控制器动作异步?

如何调用另一个控制器动作异步?
EN

Stack Overflow用户
提问于 2011-06-30 23:45:16
回答 1查看 553关注 0票数 0

我正在使用ActionMailer.net从我的MVC网站发送电子邮件,问题是发送电子邮件有时需要几秒钟,这会延迟我的ajax调用。

我尝试使用DeliverAsync(),但仍然有相同的延迟,我像这样调用ActionMailer控制器操作:

代码语言:javascript
复制
new EmailController().EntryEmail(CurrentUser, CurrentUser, postText).DeliverAsync();

所以我的问题是,是否有一种方法可以在另一个线程或异步中调用相同的Action。

备注:

我试图让ActionMailer控制器从AsyncController继承,但失败了,因为它已经从另一个类继承了。

同样为了参考,我之前问了这个问题:Is it fine to send email from another thread like this?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-01 02:32:57

为什么不创建一个继承自AsyncController的新基类呢?

对于一个简单的着火,忘记你可以使用ThreadPool.QueueUserWorkItem

就我个人而言,我更喜欢对电子邮件进行排队,并让一个单独的后台线程来处理队列。这可以像数据库和System.Threading.Timer中的“电子邮件”表一样简单

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6537455

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档