2012-08-06 27 views
0

我有一個網格視圖。 我想從網格視圖中選取一行並將該行中的列值傳遞到新頁面,同時將該值存儲在會話中。從網格視圖傳遞值到新頁面ASP.NET C#?

到目前爲止,我知道如何將它作爲字符串從嘖嘖存儲,但不知道如何保持int格式的值不將其轉換爲字符串。

這裏是我在我的C#代碼中......就像我說過的那樣將行寫出來作爲字符串類型我希望它保持爲int。

protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e) 
    { 
     if (e.CommandName == "Select") 
     { 
      Int16 num = Convert.ToInt16(e.CommandArgument); 
      TextBox2.Text = GridView1.Rows[num].Cells[0].Text; 

     } 
    } 

將它放入會話將很容易。我發現它是:

Session["customerID"] = GridView1.Rows[num].Cells[0].Text; 

所以現在真正的問題是如何保持int格式的值。

謝謝!

回答

1

您不能直接將它保存在int類型中.Session將該值存儲在對象類型中。所以你必須把它作爲int。

int customerID = (int) Session["customerID"]; 
     // or 
int customerID = Convert.ToInt32(Session["customerID"].ToString()); 
    // or 
int customerID = int.Parse(Session["customerID"].ToString()); 
1

你可以通過做這樣的事情得到的值返回:

var myInt = (int)Session["customerID"] 

會話變量可以存儲任何對象,而不僅僅是字符串。您可以在技術上將整個gridview對象存儲在會話變量中。