博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Asp.net mvc3 文件下载的实现
阅读量:5271 次
发布时间:2019-06-14

本文共 938 字,大约阅读时间需要 3 分钟。

1.控制器的ActionResult

  public ActionResult DownLoadFile()

        {
            string filePath = Server.MapPath("~/ResourceFile/1ef53469-cbac-4007-b40b-ae68644794e7.doc");
            return new DownloadResult(filePath, "1ef53469-cbac-4007-b40b-ae68644794e7.doc");        
        }

2.DownLoadResult类的实现

 public class DownloadResult : ActionResult

    {
        public DownloadResult()
        {
        }

        public DownloadResult(string virtualPath,string fileDownloadName)

        {
            this.VirtualPath = virtualPath;
            this.FileDownloadName = fileDownloadName;
        }

        public string VirtualPath

        {
            get;
            set;
        }

        public string FileDownloadName

        {
            get;
            set;
        }

        public override void ExecuteResult(ControllerContext context) {

              if (!String.IsNullOrEmpty(FileDownloadName)) {
                  context.HttpContext.Response.AddHeader("content-disposition",
                    "attachment; filename=" + this.FileDownloadName);
    }

    string filePath = this.VirtualPath;

    context.HttpContext.Response.TransmitFile(filePath);
    }

    }

转载于:https://www.cnblogs.com/kouhh/archive/2012/04/26/2471898.html

你可能感兴趣的文章
mysql-5.7 innodb 的并行任务调度详解
查看>>
shell脚本
查看>>
Upload Image to .NET Core 2.1 API
查看>>
Js时间处理
查看>>
【雷电】源代码分析(二)-- 进入游戏攻击
查看>>
Linux中防火墙centos
查看>>
如何设置映射网络驱动器的具体步骤和方法
查看>>
centos下同时启动多个tomcat
查看>>
Jmeter接口压力测试,Java.net.BindException: Address already in use: connect
查看>>
Leetcode Balanced Binary Tree
查看>>
go:channel(未完)
查看>>
[JS]递归对象或数组
查看>>
多线程《三》进程与线程的区别
查看>>
linux sed命令
查看>>
html标签的嵌套规则
查看>>
湖南多校对抗赛(2015.03.28) H SG Value
查看>>
hdu1255扫描线计算覆盖两次面积
查看>>
hdu1565 用搜索代替枚举找可能状态或者轮廓线解(较优),参考poj2411
查看>>
bzoj3224 splay板子
查看>>
程序存储问题
查看>>