背景:
- 我正在为一个经典的ASP网站开发一个 ASP.NET 应用程序
- 用户身份验证由经典 ASP 网站执行
- 经典 ASP 网站将数据存储在会话变量中,以标识经过身份验证的用户
- 我需要在我的 ASP.NET 应用程序中读取这些会话变量中的数据
许多文章都说您需要将会话状态存储在数据库中才能执行此操作。
他们都没有提到在 VB.NET 代码中使用 VBScript 对象。
可以这样做吗?我不能简单地在我的应用程序中引用 COM 库并使用对象及其方法吗?如果没有,怎么会呢?
会话变量值不仅仅是函数调用的结果。它们依赖于 IIS 和其他工具来唯一标识用户。无法跨这两个框架直接检索会话状态。
当然,根据数据的敏感程度,您可以破解它。在后台进行 Ajax 调用,以从自定义页面检索会话数据并将其馈送到 .NET 会话中。这是一个黑客和安全风险,但它会起作用。
几个解决方案...,这是一个最近的解决方案
http://weblogs.asp.net/lichen/archive/2011/10/30/sharing-session-between-asp-classic-and-asp-net-using-asp-net-session-state-server.aspx
还有其他解决方案,谷歌会话共享 asp.net asp,你会发现许多解决方案,包括女士自己的解决方案。