我读到过您可以将类直接存储到 session 变量中,即
Session["var"] = myclass;
我的问题是内存管理是如何工作的。它会自动将其序列化到客户端的 session 中吗?
或者它是否在服务器内存中保存类实例的数据,而只是在 session 对象中保存一个引用?
最佳答案
ASP.Net 会将您的对象存储在服务器内存中的static
嵌套字典中。
然后,它将带有 session ID 的 cookie 发送到客户端。
下次客户端发送请求时,ASP.Net 将从外部字典中检索与该 ID 关联的 session ,然后为您提供包含该 session 中对象的内部字典。
(这是默认 session 提供程序的工作方式;其他提供程序可以将对象序列化到 SQL Server,或者完全做其他事情)
关于c# - ASP.NET - 在 session 变量中存储类 - 它是如何工作的(内存)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5505181/