开发环境:WIN7+VS2010+C# WEBFORM NET 2.0
//在做一个下载的时候 通过VS2010  F5调试运行后,是正常的,可以通过IE打开URL//代码如下:System.Diagnostics.Process.Start("iexplore.exe", url);当我把网站发布到IIS中的时候,点击下载 无反应呢?就不弹出IE我用 Response.Redirect(url); 到是可以,但是系统默认不是IE浏览器就麻烦了  比如我的程序下载的是一个.VOC格式的文件,用IE打开就会提示下载,用谷歌浏览器就会直接打开,我想让不管什么浏览器都下载这个文件,不想通过设置浏览器 或 设置客户端那样需要用户操作的办法。
各位大侠们,用什么办法 可以不打开浏览器 点击下载 直接另存为 这样  下载文件的格式 .voc   (前提不需要在客户机上设置)详细代码:        protected void GridView2_SelectedIndexChanged(object sender, EventArgs e)
        {
            string recfile;
            string recdate;
            string url;
            recfile = GridView2.SelectedRow.Cells[7].Text;
            recdate = recfile.Substring(22, 10);
            url = "http://127.0.0.1/Driver_H/" + recdate + "/" + recfile;             System.Diagnostics.Process.Start("iexplore.exe", url);

解决方案 »

  1.   

    本帖最后由 net_lover 于 2012-03-02 06:17:59 编辑
      

  2.   

    String FileName = "服务器上的物理路径,如c:\\xxx\\xxx.x".
    Response.Clear();
    Response.Buffer = false;
    Response.AddHeader("Connection", "Keep-Alive");
    Response.ContentType = "application/octet-stream";
    Response.AddHeader("Content-Disposition", "attachment;filename=" + System.IO.Path.GetFileName(FileName));
    Response.AddHeader("Content-Length", r.Length.ToString()); 
    Response.WriteFile(FileName );
    Response.End();