ASP.Net实现多虚拟目录Web应用程序之间Session共享
下面实现多个asp.net应用程序间的Session共享的方法:
大致思路:
采用SqlServer方式存储Session,分析数据库表结构、原理、流程,大致可以得到SqlServer存储Session的方法:
表结构:
ASPStateTempApplications表存储应用程序Id及名称
ASPStateTempSessions表存储具体的Session值
不同的应用程序会在ASPStateTempApplications中注册不同的数据,从而在ASPStateTempSessions中有不同的Session,如果要实现Session共享,可以用欺骗SqlServer的方法:用某种方法使得不同的应用程序访问数据库时用相同的App!为了达到这个目的,分析[dbo].[TempGetAppID]这个存储过程,代码如下: