【问题标题】:how to handle open/save dialog in browser when download a pdf file in C#在C#中下载pdf文件时如何在浏览器中处理打开/保存对话框
【发布时间】:2023-04-09 06:05:01
【问题描述】:

嗨,,

我有一个邮件列表,我可以在其中选择许多邮件并下载(打开/不打开邮件)。在下载过程中,我更新邮件状态(下载/打开)并以 pdf 格式显示内容。在普通浏览器对话框中打开,用户可以在其中保存打开或取消选项退出。 但是如果用户取消,那么在邮件上完成的更新过程不应该发生。因此,如果用户单击打开或保存,我会考虑执行更新过程,但是我如何识别该客户端控件(我认为这取决于浏览器)

如果我下载并未打开邮件并单击对话框中的取消按钮,则会出现此问题

我所做的pdf创建代码在这个链接中

how to create PDF from HTML stored in a string from database using itextsharp

我曾经在浏览器中打开该对话框以保存 pdf

我该如何处理这个问题,请建议有效的方法(如果可能的话用代码)来处理这个问题

【问题讨论】:

    标签: c# asp.net pdf-generation


    【解决方案1】:

    一旦您从服务器向用户发送 PDF,就无法知道用户做了什么,他们是否保存文件或取消完全是浏览器中的客户端,您将无法获取通知发生了什么。

    另请注意,有些人将 PDF 设置为在浏览器中自动打开和显示,因此他们甚至可能根本看不到对话框。

    【讨论】:

    • 感谢您提供宝贵的答案,我该如何解决这个问题......只有一种方式可以下载打开的邮件,或者我可以以某种方式管理这个问题
    【解决方案2】:

    如果我正确理解了这个问题,那么您必须在向用户展示打开/保存对话框之前引入一个额外的步骤。

    例如:提供两个按钮[打开/保存]和[取消]。第一个将继续显示对话并更新邮件,而第二个甚至不会显示对话。如果他们点击打开/保存然后取消对话消息,那么这不是你的问题。

    您甚至可以为用户提供一个带有复选框的列表,以指定他/她想要哪些邮件。 (我对您的流程知之甚少,无法知道这是否有效,但您明白了。)

    【讨论】:

    • 是的,我理解你所说的,但即使我在当前对话框之前提供了一个对话框,也会发生相同的操作..但我必须采取一些可能的方式来处理它..
    猜你喜欢
    • 2015-05-17
    • 2014-02-09
    • 1970-01-01
    • 1970-01-01
    • 2016-06-05
    • 2016-09-11
    • 2014-12-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多