全局 datatable
场景:datatable设的全局变量不能用解决方案
datatable设的全局变量不能用
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using DataSetCourseTableAdapters;
public partial class 学生选课 : System.Web.UI.UserControl
{
DataTable dt = new DataTable();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
submit.Visible = false;
}
}
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
}
protected void using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using DataSetCourseTableAdapters;
public partial class 学生选课 : System.Web.UI.UserControl
{
DataTable dt = new DataTable();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
submit.Visible = false;
}
}
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
DataTable2TableAdapter dtt = new DataTable2TableAdapter();
string department = ddlDepartmentName.SelectedItem.Text;
string special = ddlSpecialName.SelectedItem.Text;
string coursename = TextBox1.Text;
string Teachername = TextBox2.Text;
if (department == "全部 ")
{
department = "-121 ";
}
if(special== "全部 ")
{
special= "-120 ";
}
if (coursename== " ")
{
coursename = "-119 ";
}
if (Teachername == " ")
{
Teachername = "-118 ";
}
dt = dtt.GetDataFindStudCourse(coursename , special, department, Teachername);
submit.Visible = true;
GridView1.DataSource = dt;
GridView1.DataBind();
}
protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
{
}
protected void Button2_Click(object sender, EventArgs e)
{
DataTable2TableAdapter dt2=new DataTable2TableAdapter();
//string user=Page.Session[ "loginname "];
string user = "S011001 ";
DataTable dtt = dt2.GetDataByStudInfo(user);
string studdepartment=dtt.Rows[0][ "StudDepartment "].ToString();
string studshool=dtt.Rows[0][ "StudSchool "].ToString();
DateTime dtime=DateTime.Now;
for (int i = 0; i < GridView1.Rows.Count;i++ )
{
CheckBox cbox=(CheckBox)(GridView1.Rows[i].FindControl( "CheckBox1 "));
if (cbox.Checked == true)
{
dt2.InsertStudChooseCourse(user,studdepartment,studshool,Convert.ToInt32(dt.Rows[i][ "CourseID "]),dtime, " ");
}
}
}
}
(object sender, EventArgs e)
{
DataTable2TableAdapter dtt = new DataTable2TableAdapter();
string department = ddlDepartmentName.SelectedItem.Text;
string special = ddlSpecialName.SelectedItem.Text;
string coursename = TextBox1.Text;
string Teachername = TextBox2.Text;
if (department == "全部 ")
{
department = "-121 ";
}
if(special== "全部 ")
{
special= "-120 ";
}
if (coursename== " ")
{
coursename = "-119 ";
}
if (Teachername == " ")
{
Teachername = "-118 ";
}
dt = dtt.GetDataFindStudCourse(coursename , special, department, Teachername);
submit.Visible = true;
GridView1.DataSource = dt;
GridView1.DataBind();
}
protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
{
}
protected void Button2_Click(object sender, EventArgs e)
{
DataTable2TableAdapter dt2=new DataTable2TableAdapter();
//string user=Page.Session[ "loginname "];
string user = "S011001 ";
DataTable dtt = dt2.GetDataByStudInfo(user);
string studdepartment=dtt.Rows[0][ "StudDepartment "].ToString();
string studshool=dtt.Rows[0][ "StudSchool "].ToString();
DateTime dtime=DateTime.Now;
for (int i = 0; i < GridView1.Rows.Count;i++ )
{
CheckBox cbox=(CheckBox)(GridView1.Rows[i].FindControl( "CheckBox1 "));
if (cbox.Checked == true)
{
dt2.InsertStudChooseCourse (user,studdepartment,studshool,Convert.ToInt32(dt.Rows[i][ "CourseID "]),dtime, " ");
}
}
}
}
在开始就设置了一个datatable变量dt,在Button1_Click中得到了dt的各个值,但后来在Button2_Click中dt就没有值了,我对dt是用的全局变量,怎么到后来就看不到了呢
------解决方案--------------------
但是每次得到的只是空的DataTable的啊
可以使用session,cache保存DataTable,然后就能共享了啊
datatable设的全局变量不能用
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using DataSetCourseTableAdapters;
public partial class 学生选课 : System.Web.UI.UserControl
{
DataTable dt = new DataTable();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
submit.Visible = false;
}
}
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
}
protected void using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using DataSetCourseTableAdapters;
public partial class 学生选课 : System.Web.UI.UserControl
{
DataTable dt = new DataTable();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
submit.Visible = false;
}
}
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
DataTable2TableAdapter dtt = new DataTable2TableAdapter();
string department = ddlDepartmentName.SelectedItem.Text;
string special = ddlSpecialName.SelectedItem.Text;
string coursename = TextBox1.Text;
string Teachername = TextBox2.Text;
if (department == "全部 ")
{
department = "-121 ";
}
if(special== "全部 ")
{
special= "-120 ";
}
if (coursename== " ")
{
coursename = "-119 ";
}
if (Teachername == " ")
{
Teachername = "-118 ";
}
dt = dtt.GetDataFindStudCourse(coursename , special, department, Teachername);
submit.Visible = true;
GridView1.DataSource = dt;
GridView1.DataBind();
}
protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
{
}
protected void Button2_Click(object sender, EventArgs e)
{
DataTable2TableAdapter dt2=new DataTable2TableAdapter();
//string user=Page.Session[ "loginname "];
string user = "S011001 ";
DataTable dtt = dt2.GetDataByStudInfo(user);
string studdepartment=dtt.Rows[0][ "StudDepartment "].ToString();
string studshool=dtt.Rows[0][ "StudSchool "].ToString();
DateTime dtime=DateTime.Now;
for (int i = 0; i < GridView1.Rows.Count;i++ )
{
CheckBox cbox=(CheckBox)(GridView1.Rows[i].FindControl( "CheckBox1 "));
if (cbox.Checked == true)
{
dt2.InsertStudChooseCourse(user,studdepartment,studshool,Convert.ToInt32(dt.Rows[i][ "CourseID "]),dtime, " ");
}
}
}
}
(object sender, EventArgs e)
{
DataTable2TableAdapter dtt = new DataTable2TableAdapter();
string department = ddlDepartmentName.SelectedItem.Text;
string special = ddlSpecialName.SelectedItem.Text;
string coursename = TextBox1.Text;
string Teachername = TextBox2.Text;
if (department == "全部 ")
{
department = "-121 ";
}
if(special== "全部 ")
{
special= "-120 ";
}
if (coursename== " ")
{
coursename = "-119 ";
}
if (Teachername == " ")
{
Teachername = "-118 ";
}
dt = dtt.GetDataFindStudCourse(coursename , special, department, Teachername);
submit.Visible = true;
GridView1.DataSource = dt;
GridView1.DataBind();
}
protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
{
}
protected void Button2_Click(object sender, EventArgs e)
{
DataTable2TableAdapter dt2=new DataTable2TableAdapter();
//string user=Page.Session[ "loginname "];
string user = "S011001 ";
DataTable dtt = dt2.GetDataByStudInfo(user);
string studdepartment=dtt.Rows[0][ "StudDepartment "].ToString();
string studshool=dtt.Rows[0][ "StudSchool "].ToString();
DateTime dtime=DateTime.Now;
for (int i = 0; i < GridView1.Rows.Count;i++ )
{
CheckBox cbox=(CheckBox)(GridView1.Rows[i].FindControl( "CheckBox1 "));
if (cbox.Checked == true)
{
dt2.InsertStudChooseCourse (user,studdepartment,studshool,Convert.ToInt32(dt.Rows[i][ "CourseID "]),dtime, " ");
}
}
}
}
在开始就设置了一个datatable变量dt,在Button1_Click中得到了dt的各个值,但后来在Button2_Click中dt就没有值了,我对dt是用的全局变量,怎么到后来就看不到了呢
------解决方案--------------------
但是每次得到的只是空的DataTable的啊
可以使用session,cache保存DataTable,然后就能共享了啊