ASP.Net Session变量存储实际值还是单纯的引用?

时间:2013-01-23 12:08:02

标签: asp.net .net session

我有以下代码,我在本地变量中获取存储在Session中的数据表,并更新数据表。下次,当我访问会话时,将获取更新的值。 (在我的例子中,第一行删除了为变量objTable1获取的数据表):

 protected void Page_Load(object sender, EventArgs e)
    {
        DataTable objTable = (DataTable)Session["dTable"];

        objTable.Rows[0].Delete();

        DataTable objTable1 = (DataTable)Session["dTable"];

    }

我认为,局部变量会复制会话变量和更新,不要更新会话变量。

问候。

1 个答案:

答案 0 :(得分:1)

您正在处理对会话中对象的引用,因此它应该如何工作。

如果要使用其他对象,则应在会话中复制对象,然后使用克隆替换存储在会话中的对象,如果要保存任何更改。