2012-10-27 52 views
2

我想從我的數據庫中顯示圖像。我有一個通用處理程序來顯示圖像。但我的問題是它沒有被調用。我調用的處理程序代碼是通用處理程序沒有在asp.net中調用

Image1.ImageUrl = "~/ShowImage.ashx?id=" + id; 

其中id是一個數字,ShowImage.ashx是處理程序。 .ashx文件中的斷點也不會受到影響。我是asp.net的新手。所以任何幫助將不勝感激。

+0

你能分享你的處理程序代碼嗎? –

回答

1

在這種情況下,您需要遵循的步驟是查看html如何呈現。

因此,右鍵點擊html頁面,然後「查看頁面源代碼」。

有找到調用ShowImage.ashx的點,並查看完整呈現的路徑是否正確。

從那裏你可以簡單地糾正路徑。

另外,您可以使用瀏覽器工具查看瀏覽器的外觀,以及他是否找到它。例如,在谷歌瀏覽器中,您可以右鍵單擊,然後檢查元素,然後單擊網絡。在那裏你可以看到紅色,你的頁面無法找到哪些文件,你需要修復路徑。

1

檢查此示例代碼這可能會幫助你。

ASPX代碼:

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title></title> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <div> 
     <h1> 
      HTTP Handler class Impliment in Img tag 
     </h1> 
     <h1>Id : 1</h1> 
     <img src="ImageHandler.ashx?id=1" alt="Dynamic Image" /> 

     <h1>Id : 2</h1> 
     <img src="ImageHandler.ashx?id=2" alt="Dynamic Image" /> 

    </div> 
    </form> 
</body> 
</html> 

C#示例(ImageHandler.ashx文件):

<%@ WebHandler Language="C#" Class="ImageHandler" %> 

using System; 
using System.Web; 

public class ImageHandler : IHttpHandler { 

    public void ProcessRequest (HttpContext context) { 
     //context.Response.ContentType = "text/plain"; 
     //context.Response.Write("Hello World"); 
     context.Response.ContentType = "image/jpeg"; 
     if (context.Request.QueryString["id"] == "1") 
     { 
      context.Response.WriteFile("bamboo.jpg"); 
     } 
     else 
     { 
      context.Response.WriteFile("palmtree.jpg"); 
     } 


    } 

    public bool IsReusable { 
     get { 
      return false; 
     } 
    } 

} 

這裏是直播下載C#示例和本VB.Net例子。 Click Here...

相關問題