HttpHandler在IIS中的部署问题(扩展名映射)

1.实现IHttpHandler接口

 

 1       public   class  ReportViewHandler : System.Web.IHttpHandler, System.Web.SessionState.IRequiresSessionState
 2      {
 3           #region  IHttpHandler 成员
 4 
 5           public   bool  IsReusable
 6          {
 7               get  {  return   false ; }
 8          }
 9 
10           public   static   string  Msg
11          {
12               get  {  return  System.Web.HttpContext.Current.Session[ " mylib.system.web.MyHandler.msg " as   string ; }
13               set  { System.Web.HttpContext.Current.Session[ " mylib.system.web.MyHandler.msg " =  value; }
14          }
15 
16           public   static   string  ContentType // content_type
17          {
18               get  {  return  System.Web.HttpContext.Current.Session[ " mylib.system.web.MyHandler.content_type " as   string ; }
19               set  { System.Web.HttpContext.Current.Session[ " mylib.system.web.MyHandler.content_type " =  value; }
20          }
21 
22           public   static   byte [] Content // content
23          {
24               get  {  return  System.Web.HttpContext.Current.Session[ " mylib.system.web.MyHandler.content " as   byte []; }
25               set  { System.Web.HttpContext.Current.Session[ " mylib.system.web.MyHandler.content " =  value; }
26          }
27 
28           public   void  ProcessRequest(System.Web.HttpContext p_Context)
29          {
30              p_Context.Response.ContentType  =  ContentType;
31              p_Context.Response.OutputStream.Write(Content,  0 , Content.Length);
32 
33              Content  =   null //  释放内存
34          }
35           #endregion
36      }

2.在Web.config里配置

 在Web.config配置文件中的httpHandlers节 添加

< add  path ="ReportView.dsrv"  verb ="*"  type ="Report.ReportViewHandler,ReportLib.Web"  validate ="false"   />

 

3.在IIS里添加映射

操作方法:IIS站点属性 ->主目录 ->  配置

 HttpHandler在IIS中的部署问题(扩展名映射)

点击“插入”按钮,选择或输入C:\WINDOWS\Microsoft.NET\Framework\v2.*****\aspnet_isapi.dll
取消"确认文件是否存在"前的钩. 最后点击”确定“。

 HttpHandler在IIS中的部署问题(扩展名映射)

最终演示效果:

HttpHandler在IIS中的部署问题(扩展名映射) 

你可能感兴趣的:(handler)