public partial class TwoLevel : System.Web.UI.Page
{
//由于大型系统,做以下工作(从数据库读数据,分成一条条存入数组,然后将每一条放入界面中,工作量太大,所以尽量用三层(一层读数据,二层分条存储,三层将数据放入界面),便于分工
List<string[]> newsinfo = new List<string[]>();//集合类型
int position;
string[] currentnewsinfo=new string[3];
protected void Page_Load(object sender, EventArgs e)
{
string sqlcommand = "SELECT * FROM newsinfor";
DBSQL DB = new DBSQL();
SqlDataReader read = DB.ExceRead(sqlcommand); while (read.Read())
{
string[] temp = new string[5];
temp[0] = read["id"].ToString();
temp[1] = read["name"].ToString();
temp[2] = read["sellprice"].ToString();
temp[3] = read["price"].ToString();
temp[4] = read["describe"].ToString();
newsinfo.Add(temp);
}
currentnewsinfo = newsinfo[0];
this.TextBox1.Text = currentnewsinfo[0];//第一列到底表示什么,只有读数据库才知道,维护很不方便,所以三层架构中会用类来代替数组
this.TextBox2.Text = currentnewsinfo[1];//第二列到底表示什么,只有读数据库才知道,维护很不方便,所以三层架构中会用类来代替数组
this.TextBox3.Text = currentnewsinfo[2];//第一列到底表示什么,只有读数据库才知道,维护很不方便,所以三层架构中会用类来代替数组
this.TextBox4.Text = currentnewsinfo[3];
this.TextBox5.Text = currentnewsinfo[4];//第二列到底表示什么,只有读数据库才知道,维护很不方便,所以三层架构中会用类来代替数组
read.Close();
position = 0; //以下用代码方式填充GridView,而不是用拖控件的形式来实现,但同样达到直接用控件的效果,所以用二层比一层更具灵活性
DataSet ds = DB.ExceDS(sqlcommand);
this.GridView1.DataSource = ds;
this.GridView1.DataBind();
}
protected void Button1_Click(object sender, EventArgs e)
{
if (position > 1)
{
position--;
currentnewsinfo = newsinfo[position];
this.TextBox1.Text = currentnewsinfo[0];
this.TextBox2.Text = currentnewsinfo[1];
this.TextBox3.Text = currentnewsinfo[2];//第一列到底表示什么,只有读数据库才知道,维护很不方便,所以三层架构中会用类来代替数组
this.TextBox4.Text = currentnewsinfo[3];
this.TextBox5.Text = currentnewsinfo[4];//第二列到底表示什么,只有读数据库才知道,维护很不方便,所以三层架构中会用类来代替数组
} }
protected void Button2_Click(object sender, EventArgs e)
{
if (position == 0)
{
position++;
currentnewsinfo = newsinfo[position];
this.TextBox1.Text = currentnewsinfo[0];
this.TextBox2.Text = currentnewsinfo[1];
this.TextBox3.Text = currentnewsinfo[2];//第一列到底表示什么,只有读数据库才知道,维护很不方便,所以三层架构中会用类来代替数组
this.TextBox4.Text = currentnewsinfo[3];
this.TextBox5.Text = currentnewsinfo[4];//第二列到底表示什么,只有读数据库才知道,维护很不方便,所以三层架构中会用类来代替数组
}数据库就3条数据...只能显示1,2条按钮前一个后一个就在1,2条数据中循环
{
//由于大型系统,做以下工作(从数据库读数据,分成一条条存入数组,然后将每一条放入界面中,工作量太大,所以尽量用三层(一层读数据,二层分条存储,三层将数据放入界面),便于分工
List<string[]> newsinfo = new List<string[]>();//集合类型
int position;
string[] currentnewsinfo=new string[3];
protected void Page_Load(object sender, EventArgs e)
{
string sqlcommand = "SELECT * FROM newsinfor";
DBSQL DB = new DBSQL();
SqlDataReader read = DB.ExceRead(sqlcommand); while (read.Read())
{
string[] temp = new string[5];
temp[0] = read["id"].ToString();
temp[1] = read["name"].ToString();
temp[2] = read["sellprice"].ToString();
temp[3] = read["price"].ToString();
temp[4] = read["describe"].ToString();
newsinfo.Add(temp);
}
currentnewsinfo = newsinfo[0];
this.TextBox1.Text = currentnewsinfo[0];//第一列到底表示什么,只有读数据库才知道,维护很不方便,所以三层架构中会用类来代替数组
this.TextBox2.Text = currentnewsinfo[1];//第二列到底表示什么,只有读数据库才知道,维护很不方便,所以三层架构中会用类来代替数组
this.TextBox3.Text = currentnewsinfo[2];//第一列到底表示什么,只有读数据库才知道,维护很不方便,所以三层架构中会用类来代替数组
this.TextBox4.Text = currentnewsinfo[3];
this.TextBox5.Text = currentnewsinfo[4];//第二列到底表示什么,只有读数据库才知道,维护很不方便,所以三层架构中会用类来代替数组
read.Close();
position = 0; //以下用代码方式填充GridView,而不是用拖控件的形式来实现,但同样达到直接用控件的效果,所以用二层比一层更具灵活性
DataSet ds = DB.ExceDS(sqlcommand);
this.GridView1.DataSource = ds;
this.GridView1.DataBind();
}
protected void Button1_Click(object sender, EventArgs e)
{
if (position > 1)
{
position--;
currentnewsinfo = newsinfo[position];
this.TextBox1.Text = currentnewsinfo[0];
this.TextBox2.Text = currentnewsinfo[1];
this.TextBox3.Text = currentnewsinfo[2];//第一列到底表示什么,只有读数据库才知道,维护很不方便,所以三层架构中会用类来代替数组
this.TextBox4.Text = currentnewsinfo[3];
this.TextBox5.Text = currentnewsinfo[4];//第二列到底表示什么,只有读数据库才知道,维护很不方便,所以三层架构中会用类来代替数组
} }
protected void Button2_Click(object sender, EventArgs e)
{
if (position == 0)
{
position++;
currentnewsinfo = newsinfo[position];
this.TextBox1.Text = currentnewsinfo[0];
this.TextBox2.Text = currentnewsinfo[1];
this.TextBox3.Text = currentnewsinfo[2];//第一列到底表示什么,只有读数据库才知道,维护很不方便,所以三层架构中会用类来代替数组
this.TextBox4.Text = currentnewsinfo[3];
this.TextBox5.Text = currentnewsinfo[4];//第二列到底表示什么,只有读数据库才知道,维护很不方便,所以三层架构中会用类来代替数组
}数据库就3条数据...只能显示1,2条按钮前一个后一个就在1,2条数据中循环
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货