ASP编程:关于session的一些技能
实现规模效益。与传统的用户拥有硬件软件所有权和使用权以及传统的应用服务商提供一对一的服务模式不同,ASP拥有应用系统所有权,用户拥有使用权,应用系统集中放在ASP的数据中心中,集中管理,分散使用,以一对多的租赁的形式为众多用户提供有品质保证的应用技术服务,实现规模效益。session|技能在程序调试中,偶然候必要晓得有几Session变量在利用,她们的值怎样?因为Session工具供应一个称为Contents的汇合(Collection),我们能够经由过程For...Each轮回来到达方针:DimstrName,iLoop
ForEachstrNameinSession.Contents
Response.WritestrName&"-"&Session.Contents(strName)&"<BR>"
Next
一样平常情形下,下面的代码能够事情得很好。但当Session变量是一个工具大概数组时,打印的了局就不准确了。
如许我们修正代码以下:
起首看看有几Session变量在利用?
Response.Write"Thereare"&Session.Contents.Count&_
"Sessionvariables<P>"
DimstrName,iLoop
利用ForEach轮回观察Session.Contents
假如Session变量是一个数组?
IfIsArray(Session(strName))then
轮回打印数组的每个元素
ForiLoop=LBound(Session(strName))toUBound(Session(strName))
Response.WritestrName&"("&iLoop&")-"&_
Session(strName)(iLoop)&"<BR>"
Next
Else
其他情形,就复杂打印变量的值
Response.WritestrName&"-"&Session.Contents(strName)&"<BR>"
EndIf
Next
Session变量偶然候不克不及事情,为何?
有良多大概性:
第一,假如客户端不同意cookie操纵,session将生效。由于session是依附于cookie的。
第二,session有生效工夫的设定。缺省的设置是20分钟。你能够如许修正它:Webdirectory->Properties->Virtualdirectory->Applicationsettings->Configuration->AppOptions->Sessiontimeout
大概在ASP中,写上如许的代码:Session.timeout=60。
第三,session是和详细的WebApplication相干的。假如用户从/products/default.asp扫瞄到/jobs/default.asp,也大概形成session的从头创立。
怎样扫除一个不再必要的session变量但不使session生效?
在ASP3.0中:
Session.Contents.Remove "变量名"
能够扫除一个变量。
在ASP2.0中:
setsession("变量名")=NULL
能够扫除变量。
在ASP3.0中,
Session.Contents.RemoveAll
能够扫除一切的session变量和session.abandon分歧,下面的办法都不会使今朝的session过时大概有效。
ASP页面顶真个<%@ENABLESESSIONSTATE=True%>是甚么意义?
IIS利用一种叫做Session跟踪的手艺,来包管各个Session变量在每一个页面是可用的。当用户会见某个ASP页面时分,IIS会起首为这个页面筹办好各个Session变量,这固然会带来功能上的影响。(利用Session变量的价值老是很高的!)
假如你有100个页面,而只要5个页面用到了Session,那末,为了全体的功能,你只必要在那5个页面设置:
<%@ENABLESESSIONSTATE=True%>
而其他页面设置为:
<%@ENABLESESSIONSTATE=False%>
</p>源代码保护方面其实现在考虑得没那么多了..NET也可以反编译.ASP写得复杂的话别人能看得懂的话.他也有能力自己写了.这方面担心的倒不太多.纵观现在网上可以下载的那些所谓BBS还有什么网站等等的源代码 我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。 虽然ASP也有很多网络教程。但是这些都不系统。都是半路出家,只是从一个例子告诉你怎么用。不会深入讨论,更不会将没有出现在例子里的方法都一一列举出来。 他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。 ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。 我们必须明确一个大方向,不要只是停留在因为学而去学,我们应有方向应有目标. 那么,ASP.Net有哪些改进呢? 接下来就不能纸上谈兵了,最好的方法其实是实践。实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能使你自己越来越迷糊。 封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。
页:
[1]