哪个是在HashTable或单个商店中存储会话的最佳方法

时间:2013-04-04 06:29:24

标签: asp.net session hashtable

我对存储多个会话值的最佳方式感到困惑。我的一位朋友告诉我们,3-4次定义会话很重,而不是在HashTable中定义。如下所示:问题是哪一个更好?这是为什么。

        Hashtable ht = new Hashtable();
        ht.Add("UserID", txtUser.Text);
        ht.Add("Type", type.Text);
        ht.Add("PaypalID", paypal.Text);
        Session["hashtab"] = ht;          //-- Is this better way or below one.

        Session["UserID"] = txtUser.Text;
        Session["Type"] = type.Text; 
        Session["PaypalID"] = paypal.Text; 

任何建议都非常感谢!

请点亮上面的情况我的TL告诉我,哈希表在服务器上占用少量内存(假设它需要500 kb)而不是一个接一个(假设需要3MB)。

2 个答案:

答案 0 :(得分:1)

我会使用第二种风格。

这不太可能成为影响应用程序性能的区域。

如果您的会话状态正在进行中,那么任何节省都可以忽略不计。

如果您的会话状态保存在状态服务器或SQL Server中,那么IPC开销和序列化成本可能会淹没像这样的任何微优化。

答案 1 :(得分:0)

第二种风格一般是首选,请检查: http://msdn.microsoft.com/en-us/library/ms178581%28v=vs.100%29.aspx

另外,您也可以查看一下:ASP.NET: Multiple Session objects in a single application