asp.net会话对象的替换
有没有办法在整个web应用程序会话中保留数据而不使用会话对象或数据库?您可以使用asp.net会话对象的替换,asp.net,Asp.net,有没有办法在整个web应用程序会话中保留数据而不使用会话对象或数据库?您可以使用 response.redirect("URL") 或者如果你想隐藏变量 Server.Transfer("URL",True) 还有ViewState,但您需要注意这一点。您有几个选项。。。您可以保留查询字符串上的所有内容,例如 http://www.example.com/MyPage.aspx?PersistedValue1=Value1&PersistedValue2=Value2 或者,如果它
response.redirect("URL")
或者如果你想隐藏变量
Server.Transfer("URL",True)
还有ViewState,但您需要注意这一点。您有几个选项。。。您可以保留查询字符串上的所有内容,例如
http://www.example.com/MyPage.aspx?PersistedValue1=Value1&PersistedValue2=Value2
或者,如果它们是页面级别或全局设置,则可以将它们存储在Viewstate/Cache/Application变量中
虽然我不确定这些有什么比使用会话更好。您为什么不想使用它呢。这取决于您不喜欢的会话和数据库的内容。例如: 您可以设置一个单独的进程(如Windows服务)来存储会话状态信息。这个过程可以将信息保存在内存或文件中,不管你喜欢什么。查看文章以了解更多信息 您可以有效地实现自己的会话系统,该系统将特定于用户的实现存储在web服务器上的XML文件中 您可以使用QueryString参数在页面之间传递信息
您可以使用asp.net缓存对象,并使用用户ID键入信息。您可以创建一个新的GUID,作为cookie发送,并将GUID存储在应用程序对象中保存的自定义对象中。话虽如此,在ASP.NET中内置会话管理后,应用程序的性能可能会更好。不是会话吗?
然后使用数据库,这是下一个最好的 以下是一些用于持久化数据的选项:
- 会议
- 饼干
- URL(通常为查询字符串参数)
- 隐藏的表单变量(包括ViewState)
- javascript数据(例如,在每次请求时将数组写回客户端)
- 使用IFRAMEs或frameset,这样父页面就不会更改,从而可以维护应用程序的状态