ASP.NET;几个 session 变量或一个 "container object"?

标签 asp.net session session-variables

我有几个变量需要从页面发送到页面...
做这个的最好方式是什么?

只需将它们一一发送:

string var1 = Session["var1"] == null ? "" : Session["var1"].ToString();
int var2 = Session["var2"] == null ? 0 : int.Parse(Session["var2"].ToString());

等等...

或者将它们全部放在某种容器对象中?
struct SessionData
{
    public int Var1 { get; set; }
    public string Var2 { get; set; }
    public int Var3 { get; set; }
}

——
SessionData data = Session["data"] as SessionData;

最好的解决方案是什么?你用什么?

最佳答案

两者的混合是最易于维护的方法。 Session提供低阻抗、灵活的键值对存储,因此不利用它是一种浪费。但是,对于始终相互关联的复杂数据片段(例如,用户配置文件),具有深度嵌套的对象是有意义的。

关于ASP.NET;几个 session 变量或一个 "container object"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3084966/

相关文章:

c# - 我如何从代码隐藏中刷新 asp 页面? C#

asp.net - 自动完成 ="off"不适用于 Google Chrome

c# - Webhandler 未在回发时触发

java - SessionAttribute 和 SpringFramework

PHP:$_SESSION 注册

c# - 如何使用这种格式验证美国货币 $123.45

c# - 使用 C# 自动超链接 URL 和电子邮件,同时保留定制标签

session - Express.js + Passport.js : How to restrict multiple login by the same user?

java - 登录后需要 Spring Security 和 Action

php - Laravel session 变量安全吗?