一般处理程序自定义方法里使用context.Response.Write()
在一般处理程序里,想添加一个方法,输出一个话Hi Handler。可是发现在这个方法里没办法用context.Respose.Write这句。例如如下代码:
- 
namespace 图片 处 理
- 
{
- 
public class HandlerTest : IHttpHandler
- 
{
- 
public void ProcessRequest( HttpContext context )
- 
{
- 
context.Response.ContentType = "text/plain";
- 
SayHello();
- 
}
- 
- 
- 
public void SayHello()
- 
{
- 
context.Response.Write( "Hi Handler" );
- 
}
- 
- 
- 
public bool IsReusable
- 
{
- 
get
- 
{
- 
return(false);
- 
}
- 
}
- 
}
- 
}
我们可以看到在方法SayHello里是没办法用context.Response.Write("Hi Handler");因为context只能在ProcessRequest里用。那这个时候怎么办?
我们在ProcessRequest方法外面定义在一个HttpContext的变量,例如:private HttpContext context;再在ProcessRequest给这个变量赋上值this.Context=context
例如代码如下:
- 
public class HandlerTest : IHttpHandler
- 
{
- 
private HttpContext context;
- 
public void ProcessRequest( HttpContext context )
- 
{
- 
context.Response.ContentType = "text/plain";
- 
this.context = context;
- 
SayHello();
- 
}
- 
- 
- 
public void SayHello()
- 
{
- 
context.Response.Write( "Hi Handler" );
- 
}
- 
- 
- 
public bool IsReusable
- 
{
- 
get
- 
{
- 
return(false);
- 
}
- 
}
- 
}
这时候SayHello方法里就可以使用context.Response.Write("Hi Handler");了,是不是很简单呢?对于高手的你,当然不屑一看。
来自 <http://www.cnblogs.com/cxeye/archive/2012/07/22/2603553.html>
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号