【问题标题】:Classic ASP and ASP.Net Session Bridging, passing Arrays经典 ASP 和 ASP.Net 会话桥接,传递数组
【发布时间】:2012-11-05 07:06:30
【问题描述】:

我看过很多关于 Classic ASP 和 ASP.Net 之间会话桥接的文章。但是,我找不到一种既能将原始类型保存到会话状态,又能将引用类型保存到会话状态的方法。

我想知道如何将数组保存到经典 ASP 会话并从 ASP.Net 会话中检索,反之亦然。

我知道这并不容易,因为诸如编组和序列化之类的内容将被纳入主题。但我想猜测一下我需要走多远才能实现这一目标。

【问题讨论】:

  • 您可以手动将数组“序列化”为字符串,然后在接收端返回数组。
  • @ShadowWizard 问题是我找不到在经典asp中序列化数组的方法。(我看过很多文章。)更重要的是,我认为即使是从经典序列化的数组由于内存分配不一样,因此无法从 ASP.Net 中检索 ASP。(我的两分钱)。如果您能给我提供参考或手动序列化的简短说明,那将非常有帮助。感谢您的关注。
  • 我并不是指我们在 ASP.NET 中所知道的序列化,只是简单地“手动”将数组转换为字符串并返回;看我的回答。 :)

标签: asp.net session asp-classic session-variables session-state


【解决方案1】:

您始终可以对普通数组进行自己的序列化:在经典 ASP 中,使用分隔符将它们转换为字符串,然后在 ASP.NET 代码中将字符串解析回数组。

两者都为您提供开箱即用的简单方法:Split()Join(),所以在经典 ASP 中:

myArray = Array("Jon", "Bob", "Don")
Session("SerializedArray") = Join(myArray, "|")

然后在 ASP.NET 中读取时:

string[] myArray = (Session["SerializedArray"] + "").Split('|');

【讨论】:

    猜你喜欢
    • 2013-01-31
    • 1970-01-01
    • 2014-10-14
    • 1970-01-01
    • 2021-12-13
    • 2016-04-15
    • 1970-01-01
    • 2011-04-29
    • 1970-01-01
    相关资源
    最近更新 更多