网站A向网站B发帖,B表示" OK"并将对象存储到会话中。阅读" OK"然后将用户重定向到B.此时,会话对象为空。 两个网站都在同一个域中。 当我进行重定向时,我需要保持对象会话
答案 0 :(得分:3)
从MSDN“ASP.NET会话状态使您能够在用户在Web应用程序中导航ASP.NET页面时存储和检索用户的值。”
您正在讨论将值从一个Web应用程序持久化到另一个Web应用程序,会话状态不是为此而设计的。
您需要将值保存到可用于ASP.Net缓存或数据库等应用程序的商店。
虽然如上所述,会话状态可以配置为持久保存到数据库,因为IIS通过会话对象管理该数据库,它仍然阻止访问会话数据交叉应用程序。
答案 1 :(得分:1)
有许多明星必须协调才能发挥作用:
这两个网站必须位于该网域的同一个域或子域中。如果你正在处理两个完全不同的域名,那么你就不幸了。
两个站点的会话模式必须是他们都可以访问的StateServer或SQL Server。如果是SQL Server,则必须将会话保留在两个站点都可以访问的数据库中。
您需要将每个站点的计算机密钥配置为相同。请参阅:https://technet.microsoft.com/en-us/library/cc755177%28v=ws.10%29.aspx