2017-05-18 7 views
0

私のセッション変数が印刷アイテムのクリックイベントでnullを返す理由を判断できないようです。データテーブルは、セッション変数の前に存在します。セッション変数 - データテーブルnull値 - asp.net C#

アドバイスはありがとうございます。

DataTable dt = new DataTable(); 
Session["sess_dt"] = orderDataTable; 

を取得するには::ストアに

protected void btnGetOrderData_Click(object sender, EventArgs e) 
    { 
     Class1 x = new Class1(); // create a new instance of class1 

     x.sopnumbe = txtOrder.Text; // pass the class string the value of text box order 

     DataSet ds = x.GetOrderData(); // call get order from class1 "x" instance 

     DataTable orderDataTable = ds.Tables[0]; // dataset to datatable (first) 

     Session["sess_dt"] = orderDataTable; // create a session var to store dataset and use elsewhere 


     // GridView1.DataSource = ds; 
     // GridView1.DataBind(); 

    } 

    protected void btnPrintItem_Click(object sender, EventArgs e) 
    { 

     DataTable dt = (DataTable)Session["sess_dt"]; 

答えて

0

値を持っている場合

DataTable dt = (DataTable)Session["sess_dt"]; 

あなたorderDataTableを確認してください。

+0

はい。それはその時点で価値があります。最終行を取得した後はnullです。私はなぜ誰かが知っていることを望んでいる。 –

+0

'null'の場合、キャストは失敗します。 –

+0

セッションをDataTableに変換する際に問題が発生している可能性がありますか? これを使用してください: DataTable dt =セッション["sess_dt"]をDataTableとして – fatkidf

関連する問題