后台文件上传器?

时间:2012-01-05 15:08:02

标签: asp.net-mvc asp.net-mvc-3 file-upload asynchronous

所以经过两天谷歌搜索并且显然提出了错误的问题后,我想我已经找到了解决方法,所以我得到了我正在寻找的答案。

我有一个用MVC3编写的Project Management应用程序。有时,用户必须附加大文件并将其上载到应用程序。 (100-200 mb)是典型的。问题当然是目前这是同步处理的,并且不同的网络速度意味着如果有人处于慢速连接状态,应用程序可以被完全阻止10分钟到1小时。 FTP在这里不是一个选项(我的手被我们的网络人员捆绑在一起)。

所以我正在寻找一种方法来执行以下工作流程:

  • 用户点击上传文件
  • 用户选择要上传的文件
  • 用户点击“开始”或任何按钮
  • 应用程序说“您的文件正在上传。完成后会通知您”
  • 用户继续正常使用该应用程序。

需要注意的一些事项:我已经实现了内部消息传递系统。因此,当我说应用程序将在完成时通知用户 - 它需要做的就是在队列中插入新消息。它不需要通知用户当前的屏幕或类似的东西 - 所以我不担心任何类型的返回值。我还有一个后台错误日志实现,所以如果出现问题我可以在日志中插入一条消息,然后再通过内部消息系统通知用户。

所以我很难理解如何实现这一点。我认为异步控制器是正确的方法,但如果我理解了我所看到的所有东西 - 它不是。随意纠正我。我使用Async实现了一个版本,但在解决它遇到的一个问题时,我被告知无论如何我做错了。

呃......帮帮忙?我听见了。

1 个答案:

答案 0 :(得分:0)

如果您可以使用第三方控件,请查看Telerik控件:

http://www.telerik.com/products/aspnet-mvc/upload.aspx

它有一个异步文件上传控件。