在Web服务器上强制下载文件 – ASP .NET C#

在Web服务器上强制下载文件 – ASP .NET C#,第1张

概述当用户单击基于ASP.NET(C#)的Web应用程序中的按钮时,我需要强制下载.sql文件。 当在按钮被点击时,保存为对话框应该在客户端打开… 我该如何做? 编辑 这是我正在使用的代码 string sql = ""; using (System.IO.StreamReader rdr = System.IO.File.OpenText(fileName)) { 当用户单击基于ASP.NET(C#)的Web应用程序中的按钮时,我需要强制下载.sql文件。

当在按钮被点击时,保存为对话框应该在客户端打开…

我该如何做?

编辑

这是我正在使用的代码

string sql = "";        using (System.IO.StreamReader rdr = System.IO.file.OpenText(filename))        {            sql = rdr.ReadToEnd();        }        Response.ContentType = "text/plain";        response.addheader("Content-disposition","attachment; filename=Backup.sql");        Response.Write(sql);        Response.End();

这是我正在收到的错误…

alt text http://img40.imageshack.us/img40/2103/erroro.gif

怎么了?

解决方法 创建一个单独的http处理程序(Downloadsqlfile.ashx):
<%@ WebHandler Language="C#" Class="DownloadHandler" %>using System;using System.Web;public class DownloadHandler : IhttpHandler {    public voID ProcessRequest(httpContext context) {        var filename = "myfile.sql";        var r = context.Response;        r.Addheader("Content-disposition","attachment; filename=" + filename);        r.ContentType = "text/plain";        r.Writefile(context.Server.MapPath(filename));    }    public bool IsReusable { get { return false; } }}

然后使ASP.NET页面中的按钮导航到Downloadsqlfile.ashx。

总结

以上是内存溢出为你收集整理的在Web服务器上强制下载文件 – ASP .NET C#全部内容,希望文章能够帮你解决在Web服务器上强制下载文件 – ASP .NET C#所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1115231.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-29
下一篇2022-05-29

发表评论

登录后才能评论

评论列表(0条)

    保存