为什么*.ashx一般处理程序不能访问Session值?

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

using System; 
using System.Web; 
using JBTCard.Entity.CompanyEntity; 
using JBTCard.Business.CompanyBS; 
using System.Collections.Generic; 
using Newtonsoft.Json; 
using System.Web.SessionState; 

public class productHandler : IHttpHandler, IRequiresSessionState, IReadOnlySessionState
    
    public void ProcessRequest (HttpContext context) { 
string moduleId = context.Request.Form["moduleId"].ToString(); 
string message = ""; 
switch (moduleId) 

case "getPTypeList": 
IList<ProductTypeIdNameEntity> list = ProductTypeBS.GetPTypeListIdName(); 
message = JavaScriptConvert.SerializeObject(list); 
break; 
case "getCompanyById": 
int cid = Convert.ToInt32(context.Session["cid"]); CompanyEntity company = CompanyBS.GetCompanyEntyById(1); 
message = JavaScriptConvert.SerializeObject(company); 
break; 
case "insert": 
string condis = context.Request.Form["condi"].ToString(); 
ProductEntity model = (ProductEntity)JavaScriptConvert.DeserializeObject(condis, typeof(ProductEntity)); 

bool b = ProductBS.AddProduct(model); 
if (b) 

message = "{success:true}"; 

else 

throw new Exception("商品添加失败!"); 

break; 

context.Response.ContentType = "text/javascript"; 
context.Response.Write(message); 
    } 

    public bool IsReusable { 
        get { 
            return false; 
        } 
    } 

}


来自http://www.cnblogs.com/ZSCFang/archive/2011/01/11/1933098.html


阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页