我们有一个 Web 应用程序,开始时很小,添加的任何新功能都只是作为同一个项目的一部分,但是现在我们想为这些插件创建新项目......
我们创建了一个新项目,它继承了主项目的 global.asax,并且还可以访问主项目的 web.config,但是,在全局 asax 代码中有会话检查数据完整性,以查看用户是否已登录..这是我们遇到问题的地方..用户已登录,但站点错误指出他们未登录,因为插件项目无法访问由主项目设置的会话用户 ID。
目前我们没有使用会话状态服务器或 sql 状态服务器,我们希望避免使用它以避免对一些旧代码造成任何麻烦。
我们也不想走互斥锁的路线..如果可以的话,我们也想远离 Windows 编码......
会话发生的情况的站点概述:用户使用 asp 代码(.net 1.1 代码)登录 用户经过身份验证并成功登录,将该用户的 guid 发送到数据库,主项目(.net 2.0 代码)抓住它guid,获取用户数据并将用户 ID 存储在会话中。任何需要知道用户是谁的页面,都从 session("userid")
所以:我们创建另一个继承 global.asax 的项目,可以访问 web.config - 完成!
我们想要在此之上做的:让这个新项目包含一个页面(来自主项目的插件功能)让这个页面访问从主项目设置的会话(“userid”)。- 不知道该怎么做...