【发布时间】:2013-03-23 00:09:03
【问题描述】:
我有一个 MVC 应用程序,它使用 WCF 服务作为数据库的连接层。 WCF 上的某些操作非常耗时。那么,这个问题的最佳解决方案是什么?我应该在我的 MVC 应用程序和 WCF 中的 Task.Factory.StartNew 中使用异步控制器吗?或者我应该在 MVC 中使用简单的控制器和 AJAX,在 WCF 中使用 Task.Factory.StartNew?还是在 MVC 中使用 Task.Factory.StartNew 更好?还是在 WCF 中使用简单线程更好?
编辑: 例如,我的服务会生成报告 - 这需要很长时间。我希望用户能够开始生成报告,而不是等到它完成 - 例如显示“正在生成”。然后他可以开始生成另一个报告,等等。报告生成完成后 - 将其返回给用户。
请提供此类解决方案的最佳实践或告诉我正确的方向,非常感谢。
【问题讨论】:
-
你想达到什么目的?最佳实践取决于各种因素——您是否需要高可扩展性、低延迟、快速的用户反馈等。
-
@Tim Rogers,我已经编辑了我的问题以使其更具体
标签: multithreading wcf model-view-controller architecture