2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 解决ASP.NET在IE10中Session丢失问题

解决ASP.NET在IE10中Session丢失问题

时间:2020-02-09 11:56:46

相关推荐

解决ASP.NET在IE10中Session丢失问题

引用:/fanvy/archive//02/07/2908769.html

今天发现在IE10中登录我公司的一个网站时,点击其它菜单,页面总会自动重新退出到登录页,后检查发现,IE10送出的HTTP头,和.AUTH

Cookie都没问题,但使用表单验证机制(FormsAuthentication)却无法判断该用户已登入,保存的Session总会丢失.

后查实这是

2.0,3.5和4.0的Bugs,因这些版本无法识别IE10的User-Agent标头字符串,所以无法识别用户浏览器的版本,从而导至了的特定功能失效,认为游览器不支持Cookies功能,不处理与Cookie相关的程式码等,从而在浏览器中不保存服务器返回的Session标识,造成丢失等.

这个问题早经微软官方确认,是IE10的一个Bug,也发布了两个HOTFIX专门用来修复这个问题,各位如遇到同样的问题,可参考以下说明:

KB2600088:Hotfix 适用在 Framework 4.0 中的 [英文]

KB2608565:Hotfix适用在 .NET Framework 3.5.1 中的 [英文]

KB2600100:Hotfix适用在 .NET Framework 3.5 SP1与 .NET Framework 2.0 SP2 中的

[英文]

简单的解决方法是,在网站根目录,新增一个浏览器定义文件(browser definition file)

步骤如下:

1.添加一个"App_Browsers"文件夹

2.添加一个"*.browser"后缀的文件,如IE10.browser.

3.添加文件内容如下:

<browsers>

<browserrefID="Default">

<capabilities><!--Toavoidwrongdetectionsofe.g.IE10-->

<capabilityname="cookies"value="true"/>

<capabilityname="ecmascriptversion"value="3.0"/>

</capabilities>

</browser>

</browsers>

设定完成,问题即可解决,本方法同时也适用于处理中控件事件回发操作无效问题。

本文转自 netcorner 博客园博客,原文链接:/netcorner/archive//06/08/3126496.html ,如需转载请自行联系原作者

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。