誰かが私に次の違いを説明してもらえますか:
Session.Add("name",txtName.text);とSession["name"] = txtName.text;  
インタビューの質問で、どちらもデータをC# のクラスのkey = "Value"ような形式で格納すると答えました。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;
        }
    }
...
}
二人とも
C# のクラスの
key = "Value"ような形式でデータを格納します。Dictionary
IHttpSessionStateそれらは実際に結果をオブジェクトに格納します。
投稿した2つのコードスニペットは、機能が同じです。Session両方とも、キーによって定義された特定のオブジェクトを更新(または存在しない場合は作成)します。
Session.Add("name",txtName.text);
と同じです:
Session["name"] = txtName.text;
1つ目はmethod-based,、2つ目が文字列である場所indexer-basedです。
どちらも、キーが保持していた以前の値を上書きします。