首页 > 代码库 > MVC、一般处理程序hanlder 输出图片文件

MVC、一般处理程序hanlder 输出图片文件

hanlder.ashx文件

[csharp] view plain copy
  1. public class Handler4 : IHttpHandler  
  2.     {  
  3.         public void ProcessRequest(HttpContext context)  
  4.         {  
  5.             #region 将图片转成Base64  
  6.             FileStream fs = new FileStream("I26S-1280x1024-s.jpg", FileMode.Open, FileAccess.Read);  
  7.             byte[] buffur = new byte[fs.Length];  
  8.             fs.Read(buffur, 0, (int)fs.Length);  
  9.             string strPic = Convert.ToBase64String(buffur);  
  10.             #endregion  
  11.  
  12.             #region 将Base64转成byte[]  
  13.   
  14.             byte[] buffurPic = Convert.FromBase64String(strPic);  
  15.  
  16.             #endregion  
  17.   
  18.             context.Response.ContentType = "image/jpeg";  
  19.             context.Response.Clear();  
  20.             context.Response.BufferOutput = true;  
  21.             context.Response.OutputStream.Write(buffurPic, 0, buffurPic.Length);  
  22.             context.Response.Flush();  
  23.         }  
  24.   
  25.         public bool IsReusable  
  26.         {  
  27.             get  
  28.             {  
  29.                 return false;  
  30.             }  
  31.         }  
  32.     }  

页面文件


[html] view plain copy
  1. <!DOCTYPE html>  
  2. <html xmlns="http://www.w3.org/1999/xhtml">  
  3. <head>  
  4.     <title></title>  
  5.     <script src=http://www.mamicode.com/"js/jquery.js"></script>  
  6. </head>  
  7. <body>  
  8.     <script language="JavaScript">  
  9.         $(document).ready(function () {  
  10.             $(‘#img1‘).attr(‘src‘, ‘/Handler/Handler4.ashx‘);  
  11.         });  
  12.     </script>  
  13.     <img id="img1" src=http://www.mamicode.com/"" />  
  14. </body>  
  15. </html>  




MVC Action方法

[csharp] view plain copy
  1. public ActionResult GetImg()  
  2. {  
  3.     #region 将图片转成Base64  
  4.     FileStream fs = new FileStream("I26S-1280x1024-s.jpg", FileMode.Open, FileAccess.Read);  
  5.     byte[] buffur = new byte[fs.Length];  
  6.     fs.Read(buffur, 0, (int)fs.Length);  
  7.     string strPic = Convert.ToBase64String(buffur);  
  8.     #endregion  
  9.  
  10.     #region 将Base64转成byte[]  
  11.   
  12.     byte[] buffurPic = Convert.FromBase64String(strPic);  
  13.  
  14.     #endregion    
  15.     return File(buffurPic, "image/jpeg");  
  16. }  


页面文件

[html] view plain copy
  1. @{  
  2.     Layout = null;  
  3. }  
  4. <!DOCTYPE html>  
  5.   
  6. <html>  
  7. <head>  
  8.     <meta name="viewport" content="width=device-width" />  
  9.     <title>PicShow</title>  
  10.     <script src=http://www.mamicode.com/"~/jquery/jquery.min.js"></script>  
  11.     <script language="JavaScript">  
  12.         $(document).ready(function () {  
  13.             $(‘#img1‘).attr(‘src‘, ‘@Url.Action("GetImg", "Selector")‘);  
  14.         });  
  15.     </script>  
  16. </head>  
  17. <body>  
  18.     <img id="img1" /><br /><br />  
  19.     <img id="img2" src="http://www.mamicode.com/@Url.Action("GetImg", "Selector")" />  
  20. </body>  
  21. </html>  

 
 

MVC、一般处理程序hanlder 输出图片文件