Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
asp.net会话对象的替换_Asp.net - Fatal编程技术网

asp.net会话对象的替换

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 或者,如果它

有没有办法在整个web应用程序会话中保留数据而不使用会话对象或数据库?

您可以使用

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,这样父页面就不会更改,从而可以维护应用程序的状态

为什么会话对你不好?如果你想知道为什么你必须坚持一些东西,以及“什么”。我需要一些东西来代替会话。我需要避免会话超时。