2012-09-05 1 views
0

HttpHandler를 사용하여 데이터베이스에서 이미지를 검색 한 다음 웹 페이지 (aspx)의 이미지 웹 컨트롤에서 ImageUrl로 처리기를 사용합니다. 코드는 아래와 같습니다. 그러나 그것은 작동하지 않으며 지금까지 나는 이유를 이해할 수 없었다. 내가 processRequest라는 (에 중단 점을 유지하는 경우 문제는), HttpHandler를 공격 한 적이입니다 아래 httphandler가 절대 실행되지 않습니다

내 웹 페이지의 마크 업 간단한 처리기

코드 아래
public class ImageHandler : IHttpHandler 
{ 
    StaffMemberRepository db = new StaffMemberRepository(); 
    public void ProcessRequest(HttpContext context) 
    { 
     int id = Convert.ToInt32(context.Request.QueryString["id"].ToString()); 
     byte[] image = db.GetImage(id); 
     context.Response.ContentType = "image/jpg"; 
     context.Response.BinaryWrite(image); 
    } 

    public bool IsReusable 
    { 
     get 
     { 
      return false; 
     } 
    } 
} 

하고있다 명중되지 않습니다

asp:Image ID="imgStaff" runat="server" ImageAlign="Middle" ImageUrl="~/Handlers/ImageHandler.ashx?id=2" 

누군가 내가 여기서 잘못하고있는 것을 알려 줄 수 있습니까?

+0

처리기를 등록 할 웹 구성 섹션을 제공 할 수 있습니까? – Josh

+0

브라우저에서 다음과 같이 지적 했습니까? Handlers/ImageHandler.ashx? id = 2? –

+0

아직 Web.config에 아무것도 넣지 않았습니다. 나는 어리석게 생각하고 있을지 모르지만 필자는 ASP 장치 서버를 사용하여 로컬 컴퓨터에 web.config 부분을 건너 뛸 수 있다고 생각했습니다. 그것이 사실이 아니라면 친절하게 나를 정정하십시오. –

답변

0

좋아, 이제 내 어리 석음을 볼 수 있었다. 방금 web.config에 내 처리기를 등록했는데 모든 것이 이제 괜찮아 보입니다.