Asp.net中处理一个站点不同Web应用共享Session的问题
程序员文章站
2023-12-01 20:49:34
1、问题描述: 系统s中有m1,m2,m3,m4四个模块,每个模块都是一个web应用。其中一个模块中设置session后在其他模块中无法...
1、问题描述:
系统s中有m1,m2,m3,m4四个模块,每个模块都是一个web应用。其中一个模块中设置session后在其他模块中无法读取。
2、问题原因:
一个web应用相当于一个站点,应用与应用之间不可能共享session。
3、解决方法:
1) 将四个web应用包含在同一个解决方案中
(注:调整.webinfo文件使解决方案能构正常运行)
2) 新建一个web应用main,该web应用包含在解决方案s中,并直接存放在s目录下(即与虚拟目录s相对应)。
3) 在main应用中添加其他四个应用的引用
4) 重新生成main应用,此时,与main模块相关的m1、m2、m3、m4四个模块的dll将生成于s\bin目录下。
5) 调整web.config文件
删除m1、m2、m3、m4四个模块web.config中除appsetting节以外的所有节。(也可删除四个模块中的web.config,只保留s目录下的web.config文件。)
以下操作将影响开发环境
6) 删除goble.acax
删除m1、m2、m3、m4四个模块中的goble.acax文件。
7) 删除m1、m2、m3、m4四个模块对应的虚拟目录
8)大功告成