C# PDF 预览

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
public ActionResult V1()
        {
            try
            {
 
                    string filePath = "E://123.pdf";
 
                    if (System.IO.File.Exists(filePath) == false)
                    {
                        return base.Content("文件不存在!");
                    }
 
                    Response.ContentType= "application/pdf";
                     Response.AddHeader("Accept-Ranges", "bytes");
                    Response.AddHeader("Access-Control-Expose-Headers", "Content-Disposition");
                     Response.AddHeader("Connection", "keep-alive");
                    Response.AddHeader("Content-Disposition", "inline; filename=" + id+".pdf");
                    Response.WriteFile(filePath);
                    Response.End();
                    return base.Content("");
            }
            catch (Exception e)
            {
                return base.Content(e.Message);
            }
        }

  

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
public ActionResult V2()
       {
           try
           {
 
                   string filePath = "E://123.pdf";
 
                   if (System.IO.File.Exists(filePath) == false)
                   {
                       return base.Content("文件不存在!");
                   }
                   var memoryStream = new MemoryStream();
                   using (var stream = new FileStream(filePath, FileMode.Open, FileAccess.Read))
                   {
                       stream.CopyTo(memoryStream);
                   }
                   memoryStream.Seek(0, SeekOrigin.Begin);
 
                   Response.AddHeader("","");
 
                   return new FileStreamResult(memoryStream, "application/pdf");
           }
           catch (Exception e)
           {
               return base.Content(e.Message);
           }
       }

  

posted @   荧屏  阅读(308)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示