AppendHeader然后刷新

时间:2015-05-19 17:10:54

标签: c# html asp.net

我有这个功能正常工作。调用时 - 它会在我的浏览器的下载文件夹中创建一个文件:

show_on

但现在,我需要在将该文件正确添加到下载文件夹后刷新页面。我试过这个:

private void gvLots_Export(string fileName)
{
    Response.Clear();

    Response.AppendHeader("content-disposition", "attachment; filename=" + fileName );
    Response.ContentType = "text/plain";


    Response.Write(fichierExport.Contenu);
    Response.End();

}

但是,由于显而易见的原因,它不起作用:标题已经发送,您无法在Response.End()之后重定向。

我尝试在标题中添加一个可以通过Resquest [" stop"]检索的变量(如下所示):

    Response.AppendHeader("content-disposition", "attachment; filename=" + fileName );
    Response.ContentType = "text/plain";

    Response.Write(fichierExport.Contenu);
    Response.End();
    Response.Redirect(Request.RawUrl);

但这些结果更糟糕。它不会刷新页面或下载任何内容,但它会向我显示我尝试下载到浏览器中的文件的内容...是否可以下载内容并在同一功能中刷新页面。 。无需要求客户推送2个不同的按钮?

2 个答案:

答案 0 :(得分:1)

由于我还没有发表评论,我将在此发布。

看看:Refresh Page C# ASP.NET。您是否尝试过链接中描述的方式?例如:

Response.Redirect(Request.Url.ToString(), true);

正如here所述,RawUrl仅包含域信息后的网址部分,Url包含所有内容。

答案 1 :(得分:1)

我认为我要求的东西无法完成......我没有看到任何类似于我试图在任何网页上做的事情。我将制作另一个只刷新页面的超链接,并且我会要求所有客户在下载后点击它...