将Session值储存于SQL Server中

一般情况下,我们喜欢使用session储存我们的变量。asp.net提供了下面一些方法储存session的值: 

inproc 

state server 

sql server 

“inproc”表示我们使用传统asp一样的方法储存session的值,而且“state server”则表示使用另外一台主机来储存session的值。当然我们也能使用sql server储存值,我们这篇文章就专门用于讲解这种方法。 

运行installsqlstate.sql文件 

首先需要在winntmicrosoft.net中找到installsqlstate.sql文件,然后在sql server 中执行它。在我的机器中,它存在于e:winntmicrosoft.netframeworkv1.0.2914目录中。这个文件是微软自己提供的,里面有很全的sql语句,大家放心使用。下图就是生成的数据表。 

修改你的web.config文件,指定session的mode为sql server 

将web.config的sessionstate部分改成: 

<sessionstate mode=”sqlserver” 

sqlconnectionstring=”data source= 

win2000;userid= 

sa;password=” cookieless= “false”timeout= 

“20” /> 

创建asp.net web forms 

下面就建立一个测试的asp.net程序,使用session程序这里就不用多说了,下面是我的程序的截图。这个程序只是简单的储存一个字符串数据于session中,然后再显示这个数据在label控件中。 

现在所有的session变量都储存在数据表中,而不是内存中了。你可打开aspstatetempsessions表来查看这些session数据了。 

删除这些数据库和表 

如果你不喜欢这个数据储存方式,看得实在是不爽,那么你可以把这些表和数据库完全删除掉。这个也不要担心这种删除会影响数据库(因为害怕误删除一些数据),因为微软同样也得供给你们一个删除sql 文件,名叫unintallsqlstate.sql。它与intallsqlstate.sql一样放在.net的config目录中。

(0)
上一篇 2022年3月21日
下一篇 2022年3月21日

相关推荐