在ashx页面中context.Session["xxx"]获取不到值的解决办法

简介:

 1.在 aspx和aspx.cs中,都是以Session["xxx"]="aaa"和aaa=Session["xxx"].ToString()进行读写。 而在ashx中,Session都要使用context.Session,读写方法不变。


2.在ashx文件中,若要对Session进行成功的读写,应该在使用 Session的class后增加接口IRequiresSessionState (添加 时可能提示添加命名空间 using System.Web.SessionState 的引用),否则 .Sessio context n["xxx"]读出的总是null


那么,在aspx、aspx.cs和ashx中可以使用Session后,我们在 AppCode的cs文件中,如何操作Session或者得到访问者的IP?

首先, aspx.cs中是直接Request和Session,而在ashx中是context.Request和 context.Session。aspx.cs中可以直接使用,是因为有Web.UI的支持,而ashx中只能靠传进去的HttpContext实例对 Request和Session等进行操作。那么同样的,AppCode中的cs文件中也没有Web.UI,但是没有HttpContext参数,如果 cs中可以得到当前的HttpContext,那么自然而然就可以根据这个HttpContext去操作Request和Session。

HttpContext类中有一个静态属性叫Current,我们可以通过这个属 性去得到当前的HttpContext。当然,在cs中要操作Session,也应该增加IRequiresSessionState 接口。


与Session、 Request、Response、Server等相关的方法和属性,都可以根据这个模式、方法去套用。

比如,在AppCode的cs文件 中要得到当前访问者的IP,可以用HttpContext.Current.Request.UserHostAddress。



















本文转自cnn23711151CTO博客,原文链接: http://blog.51cto.com/cnn237111/510681,如需转载请自行联系原作者









相关文章
|
2月前
BurpSuite8.2 -- 查找包含id参数的URL
BurpSuite8.2 -- 查找包含id参数的URL
19 1
|
3月前
|
测试技术
Cypress如何设置全局URL?
Cypress如何设置全局URL?
|
存储 缓存
Debug:获取自定义cookie为空的常见原因
1 场景在实现HandlerInterceptor接口的过程中,常用到HttpServletRequest的getCookies()方法,可以获取缓存的cookie数据。以下拦截器可以实现利用cookie实现自动登录基本思路:检查cookie在不在-检查cookie_username在不在-检查session中有没有用户-保持登录实现: import entity.User; import ser
1464 1
Debug:获取自定义cookie为空的常见原因
|
18天前
【超实用】Angular如何修改当前页面网页浏览器url后面?param1=xxx&param2=xxx参数(多用于通过浏览器地址参数保存用户当前操作状态的需求),实现监听url路由切换、状态变化。
【超实用】Angular如何修改当前页面网页浏览器url后面?param1=xxx&param2=xxx参数(多用于通过浏览器地址参数保存用户当前操作状态的需求),实现监听url路由切换、状态变化。
|
存储 PHP 数据安全/隐私保护
PHP什么页面是需要session的?什么页面是不需要session的?如何判断?
PHP什么页面是需要session的?什么页面是不需要session的?如何判断?
|
存储 PHP
PHP为什么需要设置session_set_cookie_params()函数来配置session的cookie参数?
PHP为什么需要设置session_set_cookie_params()函数来配置session的cookie参数?
103 0
页面加载显示${xxx.yyy},不显示内容(el表达式默认不解析的问题)的解决办法
页面加载显示${xxx.yyy},不显示内容(el表达式默认不解析的问题)的解决办法
页面加载显示${xxx.yyy},不显示内容(el表达式默认不解析的问题)的解决办法
|
资源调度 小程序
03导航链接的制作(wx:for循环)和小程序警告request fail url not in domain list
03导航链接的制作(wx:for循环)和小程序警告request fail url not in domain list