了解.Net用于存储SQL Server会话状态的过程

时间:2011-10-26 15:31:39

标签: sql-server session-state

背景

我们有一个大型的asp.net应用程序,并使用了很多会话,如数据集,数据表等。我们希望为此应用程序支持Web场,因此我们希望在sql server中保存会话状态。我成功地将所有必需的数据存储到sql服务器中,并且还获得了所有数据。我们支持的数据库是SQL Server 2005-Sql Server 2008.我们必须在会话中存储数据表和数据集,即使我们知道它会有点贵。

我的问题是我想了解ASP.Net用于在Sql server中存储Session数据的过程。任何文章等都有帮助

1 个答案:

答案 0 :(得分:1)

我可以想到两个用于理解SQL Server会话状态的好资源。

一个是通过阅读Implementing a Session-State Store Provider来了解会话状态提供者必须做什么。

另一个是研究用于创建会话存储的DDL。您将在计算机上的 C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 目录中找到名为 InstallSqlState.sql 的文件。

你会找到CREATE PROCEDURE dbo.DeleteExpiredSessions这样的DDL,它可以准确地显示幕后发生的事情。

然后,您可以通过实现自己的自定义提供程序来测试您的知识,该提供程序可以持久保存到XML或MySQL或Hadoop或Memcached或任何您想要的内容。