易截截图软件、单文件、免安装、纯绿色、仅160KB

在asp.net中使用session常见问题集锦

问:为什么session在有些机器上偶尔会丢失?  
答:可能和机器的环境有关系,比如:防火墙或者杀毒软件等,尝试关闭防火墙。  
问:为什么当调用session.abandon时并没有激发session_end方法?  
答:首先session_end方法只支持inproc(进程内的)类型的session。其次要激发session_end方法,必须存在session(即系统中已经使用session了),并且至少要完成一次请求(在这次请求中会调用该方法)。  
问:为什么当我在inproc模式下使用session会经常丢失?  
答:该问题通常是由于应用程序被回收导致的,因为当使用进程内session时,session是保存在aspnet_wp进程中,当该进程被回收session自然也就没有了,确定该进程是否被回收可以通过查看系统的事件查看器获得信息。  
 具体信息请参考:  
 session variables are lost intermittently in asp.net applications  
 http://support.microsoft.com/default.aspx?scid=kb;en-us;q316148  
 在1.0的时候也有一个bug会导致工作进程被回收并重启,该bug已经在1.1和sp2中修复。  
 关于该bug的详细信息请参考:  
 asp.net worker process (aspnet_wp.exe) is recycled unexpectedly.   
 http://support.microsoft.com/default.aspx?scid=kb;en-us;q321792  
问:为什么当session超时或者abandoned后,新session的id和原来的相同?  
答:因为sessionid是保存在客户端浏览器的实例里,当session超时在服务器重新建立session时,将使用浏览器传来的sessionid,所以当session超时后,再重新建立后sessionid并不变。  
问:为什么每次请求的sessionid都不相同?  
答:该问题可能是没有在session里面保存任何信息引起的,即程序中任何地方都没有使用session。当session中保存信息之后sessionid将一直和浏览器相关,此时的sessionid将不会在变化。  
问:asp和asp.net之间是否可以共享session?  
答:可以。但是这是一个比较复杂的过程,微软提供了官方的解决方案,请参考:http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnaspp/html/converttoaspnet.asp  
问:什么类型的对象可以保存在session


相关文档:

向 ASP.NET Web 服务器控件添加客户端脚本事件

更新:2007 年 11 月 可以像对 HTML 元素那样,以声明方式向 ASP.NET 网页上的控件添加客户端脚本。或者,如果事件或代码依赖仅在运行时可用的信息,可以通过编程方式向 ASP.NET Web 服务器控件添加客户端脚本事件。 说明: 可以在客户端脚本中通过 ID 引用控件。有关更多信息,请参见 ASP.NET 网页中的客户端脚本。 向 ......

asp.net 屏蔽 只能 是数字

 //数字字符
       public static string KeepNum(string str)
       {
           char[] tmp = new char[str.Length];
           char[ ......

如何提高ASP.NET页面载入速度的方法

1.采用 HTTP Module 控制页面的生命周期。
2.自定义Response.Filter得到输出流stream生成动态页面的静态内容(磁盘缓存)。
3.页面GZIP压缩。
4.OutputCache 编程方式输出页面缓存。
5.删除页面空白字符串。(类似Google)
6.完全删除ViewState。
7.删除服务器控件生成的垃圾NamingContainer。
8.使用计划任务按时生成 ......

ASP.NET 验证码创建及刷新

验证码页面后台Code.aspx.cs代码:(已经将验证码存于session中session["code"],可在调用页面直接读取session)
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebCon ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号