如何在ASP.NET中定义类似于会话变量的变量

本文关键字:变量 类似于 会话 定义 ASP NET | 更新日期: 2023-09-27 18:28:06

我想定义一个变量或类似对象的会话,以存储每个用户的数据,我想在许多页面中访问这个对象,你能告诉我有没有办法吗。感谢

如何在ASP.NET中定义类似于会话变量的变量

实际上,您只有几个选择。URL参数、隐藏的表单输入、cookie、会话(在负载平衡的情况下要小心),或者只是从数据库中存储/检索内容。RaveDB在这方面非常出色,因为它是如此快速和基于文档。

您可以将数据存储在cookie中,然后在代码库中将特定cookie解析为类似System.Collections.Generic.Dictionary 的内容

但是你应该使用会话。

编辑

如果是KeyValuePair<String,TValue>,则可以设置Session[kvp.Key] = kvp.Value;,如果不是Session["KVP"] = kvp;

如果你真的不想使用会话,请使用数据库记住这是一个缓慢的方法。。。

我遇到过一些情况,我想尽量减少/消除会话存储(因为用户的wifi连接很糟糕)。为了处理这种情况,我使用了一个加密的查询字符串,字符串中只有他们的ID。在基本页面中,我会解密字符串并从数据库中提取我需要的信息。这些信息将被填充到我定义的对象中,由于这些对象在基页中,我可以访问继承它的任何页面中的信息。