2017-05-18 3 views
0

Ich kann nicht feststellen, warum meine Sitzungsvariable Null in dem Druckelement-Click-Ereignis zurückgibt. Die Datentabelle ist vor der Sitzungsvariablen vorhanden.Sitzungsvariable - Datentabelle null Wert asp.net C#

Jede Beratung wird geschätzt.

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"]; 

Antwort

0

zu speichern:

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

Überprüfen Sie Ihre orderDataTable wenn einen Wert hat:

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

abzurufen.

+0

Ja. Es hat einen Wert an diesem Punkt. Nach dem Abrufen der letzten Zeile ist es null. Ich hoffe, jemand weiß warum. –

+0

Wenn es "null" wäre, würde die Besetzung fehlschlagen. –

+0

vielleicht haben Sie ein Problem beim Konvertieren der Sitzung in DataTable? Versuchen Sie Folgendes zu verwenden: DataTable dt = Sitzung ["Sess_dt"] als DataTable – fatkidf

Verwandte Themen