我是asp.net MVC4的新手。我正在建立一个网上购物商店。我正在为用户提供一个选项来上传包含数千条记录的文件,以便在文件中上传,然后我的应用程序将它们存储在数据库系统中。这是一项漫长的任务。所以我想在后台完成这项任务。当用户上传包含大量记录的文件时。那么应该允许用户做一些其他的任务。添加记录应该在后台完成。请告诉我该怎么办。任何帮助材料,教程?而且我没有使用Entity框架。我使用简单的面向连接的模型。我已经在stackoverflow上看了很多帖子,但找不到我的任务的解决方案 感谢
答案 0 :(得分:1)
您可以在控制器中执行类似的操作,但AFAIK并不保证您的线程不会被应用池回收中止。
Task.Factory.StartNew(() =>
{
//do something here with your Request.Files[0].InputStream;
},
CancellationToken.None,
TaskCreationOptions.LongRunning, // guarantees separate thread
TaskScheduler.Default);
UPD:
可靠的方法是保存文件,让Windows服务在后台处理它。