在asp.net handler 中 使用 session
首先 handler 預設情況下是不支援 session 的。如果想在一般處理程式(handler)中使用session ,需要實現一個不需要實現任何方法的介面IRequiresSessionState
引入 System.Web.SessionState 即可。此時需要context.Session["pars"]這樣引用。具體例項如下圖所示:
下面是網友的文章:
參考文章1
原文連結
抽象類
- using System;
- using System.Web;
- using System.Web.SessionState;
- ....
- namespace SRERC.Web.admin
- {
- /// <summary>
- /// SessionAwareHandler 的摘要說明
- /// </summary>
- public abstract class SessionAwareHandler : IHttpHandler, IRequiresSessionState
- {
- .....
- public void ProcessRequest(HttpContext context)
- {
- context.Response.ContentType = "text/plain";
- // 身份認證
- // 許可權控制
- MyProcess(context);
- }
- ........
- protected abstract void MyProcess(HttpContext context);
- }
- }
一般處理程式實現類:
- using System;
- using System.Web;
- namespace SRERC.Web.admin
- {
- /// <summary>
- /// bandHandler 的摘要說明
- /// </summary>
- public class bandHandler : SessionAwareHandler
- {
- protected override void MyProcess(HttpContext context)
- {
- //....處理過程
- //....
- context.Response.Write(json);
- }
- }
- }
原文連結
原文中採納的回復就是正解
Implement the System.Web.SessionState.IRequiresSessionState interface
public class Handler : IHttpHandler, System.Web.SessionState.IRequiresSessionState
{
public void ProcessRequest(HttpContext context)
{
context.Session["StackOverflow"] = "overflowing";
context.Response.Redirect("~/AnotherPage.aspx");
}
}
OK,能在handler中使用session了。但是不知道是否符合規矩
相關文章
- 在ASP.NET中使用Session常見問題集錦ASP.NETSession
- Android中Handler的使用Android
- Asp.net中多專案共享Session (轉)ASP.NETSession
- Asp.Net 中使用HttpModule 做Session驗證ASP.NETHTTPSession
- jwt-在asp.net core中的使用jwtJWTASP.NET
- Android中Handler的正確使用Android
- ASP.NET將Session儲存到資料庫中ASP.NETSession資料庫
- ASP.NET中Session的sessionState 4種mode模式ASP.NETSession模式
- 使用SQL Server儲存ASP.NET Session變數SQLServerASP.NETSession變數
- ASP.NET Core 中簡單Session登入校驗ASP.NETSession
- Asp.net Strong type SessionASP.NETSession
- struts2中session使用Session
- 【ASP.NET Core】使用最熟悉的Session驗證方案ASP.NETSession
- ASP.NET MVC使用Filter解除Session, Cookie等依賴ASP.NETMVCFilterSessionCookie
- 在session中儲存JSON物件SessionJSON物件
- Android中HandlerAndroid
- ASP.NET Core 使用 Redis 和 Protobuf 進行 Session 快取ASP.NETRedisSession快取
- jquery , find the event handler,找到jquery中的event handlerjQuery
- 在ActionForm中如何獲取session中的資料?ORMSession
- ASP.NET:EntityFramework實現SessionASP.NETFrameworkSession
- asp.net session的應用ASP.NETSession
- 在 HttpHandler 中使用 Session 的注意事項HTTPSession
- Android中的handlerAndroid
- 【dinghao】在Asp.net中呼叫非同步方法--使用訊號量ASP.NET非同步
- 【jackyrong 】asp.net 2.0中在gridview中使用DataFromatStringASP.NETView
- ASP.NET Session簡單介紹ASP.NETSession
- php中Session使用方法詳解PHPSession
- 在Oracle中session和process的區別(轉)OracleSession
- 在 ASP.NET Core 中禁用HTTPSASP.NETHTTP
- 在ASP.NET中防止注入攻擊ASP.NET
- 在ASP.NET Core中使用ViewComponentASP.NETView
- 在ASP.NET中使用.NET元件 (轉)ASP.NET元件
- 【轉】在ASP.NET MVC中,使用Bundle來打包壓縮js和cssASP.NETMVCJSCSS
- ASP.NET Session的七點認識ASP.NETSession
- Session 使用Session
- ActiveMQ第四彈:在HermesJMS中建立ActiveMQ SessionMQSession
- comet在asp.net中的實現ASP.NET
- 在ASP.NET Core中用HttpClient(六)——ASP.NET Core中使用HttpClientFactoryASP.NETHTTPclient