有没有办法在不使用会话对象或数据库的情况下在整个Web应用程序会话中保留数据?
答案 0 :(得分:1)
以下是保留数据的一些选项:
答案 1 :(得分:0)
您可以使用
通过网址传递它们response.redirect("URL")
或者如果你想隐藏变量
Server.Transfer("URL",True)
答案 2 :(得分:0)
还有ViewState,但你需要小心。
答案 3 :(得分:0)
你有几个选择......你可以在查询字符串上保留所有内容,例如
http://www.example.com/MyPage.aspx?PersistedValue1=Value1&PersistedValue2=Value2
或者,如果它们是页面级别或全局设置,您可以将它们存储在Viewstate / Cache / Application变量中。
虽然我不确定这些中的任何一个比使用Session更好。你为什么不想用它。
答案 4 :(得分:0)
这取决于你不喜欢的会话和数据库。例如:
您可以设置一个单独的进程(如Windows服务)来为您存储会话状态信息。无论您真正喜欢什么,该过程都可以将信息保存在内存或文件中。结帐this文章了解更多信息。
您可以有效地实现自己的会话系统,该系统将用户特定的实现存储在Web服务器上的XML文件中。
您可以使用QueryString参数将信息从一个页面传递到另一个页面。
您可以使用asp.net Cache对象并使用UserID键入信息。
答案 5 :(得分:0)
您可以创建一个作为cookie发送的新GUID,并将GUID存储在保存在应用程序对象中的自定义对象中。话虽如此,使用ASP.NET内置的会话管理,您的应用程序可能会表现得更好。
答案 6 :(得分:-1)
不是会话? 然后使用数据库它是次佳的!