时间:2021-07-01 10:21:17 帮助过:10人阅读
本文实例讲述了*.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;
- }
- }
- }
其实只要加上这句就好了:
- using System.Web.SessionState;
希望本文所述对大家的asp.net程序设计有所帮助