c# - Session.Add ("key",value) 和 Session ["key"] = value 之间有什么区别?

标签 c# asp.net session

谁能给我解释一下:

Session.Add("name",txtName.text);Session["name"] = txtName.text;

这是一个面试问题,我回答说两者都以 key = "Value" 格式存储数据,就像 C# 中的 Dictionary 类。

我说的对吗,有什么不同吗?

最佳答案

查看 HttpSessionState 的代码向我们表明它们实际上是相同的。

public sealed class HttpSessionState : ICollection, IEnumerable
{
    private IHttpSessionState _container;
...
    public void Add(string name, object value)
    {
        this._container[name] = value;
    }

    public object this[string name]
    {
        get
        {
            return this._container[name];
        }
        set
        {
            this._container[name] = value;
        }
    }
...
}

至于他们俩

Storing data in key = "Value" format like Dictionary class in C#.

它们实际上将结果存储在 IHttpSessionState 对象中。

关于c# - Session.Add ("key",value) 和 Session ["key"] = value 之间有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10017962/

相关文章:

c# - 如何从各种未知数字类型转换为 double

c# - 从 ListView 中删除所选项目

c# - 基于细胞的液体模拟 : Local pressure model?

javascript - CSS 问题 - 我的 DIV 一直处于折叠状态!

mysql - mySQL 基于事件而非时间戳的 session 化

php - 有没有办法清除所有 session 中的某些 session 数据?

c# - 与异步方法相关的 VoidTaskResult 类型是什么?

asp.net - UpdatePanel.Update() 的 RadAjaxPanel 版本?

c# - 启用 session 状态

php - 如何针对跨域的 PHP session ID 对 Socket.IO 进行身份验证