我正在用asp.netcore2.2构建一个生成excel文件的应用程序。 Excel生成可能需要一些时间,具体取决于用户的需求。(like有时,它高达20- 30秒)。我的问题是:如何在不阻止用户导航的情况下运行此生成? 例如,用户可以开始文件生成,然后继续在网站上导航,稍后再回来下载生成的文件。怎么做呢?
3 回答
一只萌萌小番薯
TA贡献1795条经验 获得超7个赞
在后台任务中运行生成。生成excel文件的名称,并将关系保存在DB或tokken中(取决于您的需要)。线程将在数据库中生成Excel文件更新状态。您可以通知用户或让用户看到特定页面上的信息。有很多方法可以做到这一点。
慕尼黑的夜晚无繁华
TA贡献1864条经验 获得超6个赞
这不是一个技术性的、特定于C#的问题,而更像是一个UX问题。
你可以留下一个按钮,用户可以点击来请求生成所述文件。您运行一个接收此类请求的服务,然后开始处理。
当服务开始生成时,页面只显示一条消息,说“请等待,正在生成...“.
完成后,将页面内容更改为允许用户下载的链接。
子衿沉夜
TA贡献1828条经验 获得超3个赞
在JS中,您可以打开一个新的选项卡,您将在此新选项卡中处理Excel文件。
或者,您可以在serveur上创建excel文件(显示其当前正在创建),而不会阻止导航,当您的用户返回到生成页面时,如果找到文件,您可以将其设置为可下载。
- 3 回答
- 0 关注
- 70 浏览
添加回答
举报
0/150
提交
取消