为.net training 活动准备的程序,按照前期在的计划中要求的来编写:
【cnBlogsGuestBook v1.0】 :
采用CodeBehind模式,当成asp来用。重点放在如何让大家能理解CodeBehind模式。我的代码基本都写在了inherits的.cs文件里面,只要程序能运行无误,达到目的即可。
程序演示地址:http://www.sim-crea.com/test/default.aspx
程序下载地址:https://files.cnblogs.com/lovewangshu/cnblogsGuestbook.rar
程序主要代码:
1。显示数据库中的帖子:
private void Page_Load(object sender, System.EventArgs e)

{
//建立数据库路径存储字符串
string dbname;
//SQL语句字符串
string strSQL;
dbname=Server.MapPath(@"data0621/database.mdb");
//建立一个连接数据库用的Connection
OleDbConnection conn=new OleDbConnection("PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA Source="+dbname);
//打开这个连接
conn.Open();
strSQL="select * from tbl_msg";
DataSet ds=new DataSet();
OleDbDataAdapter myAdapter=new OleDbDataAdapter(strSQL,conn);
//将数据填如DataSet对象中
myAdapter.Fill(ds,"tbl_msg");
//dt中存ds中表tbl_msg的内容
DataTable dt=ds.Tables["tbl_msg"];
//循环显示所有的留言信息
string strResponse="";
for(int i=0;i<dt.Rows.Count;i++)

{
strResponse="";
strResponse="<TABLE id='Table1' cellSpacing='1' cellPadding='1' width='80%' border='1'>";
strResponse+="<TR>";
strResponse+="<TD>";
//帖子的title
strResponse+=dt.Rows[i]["msg_title"];
strResponse+="</TD>";
strResponse+="</TR>";
strResponse+="<TR>";
strResponse+="<TD>";
//帖子的content
strResponse+=dt.Rows[i]["msg_content"];
strResponse+="</TD>";
strResponse+="</TR>";
strResponse+="<TR>";
strResponse+="<TD align='right'>";
strResponse+="<a href='del.aspx?id="+dt.Rows[i]["msg_id"]+"'>删除|暂时不可用</a>";
strResponse+="</TD>";
strResponse+="</TR>";
strResponse+="</TABLE><br />";

Response.Write(strResponse);
}
//显示完毕后关闭连接
conn.Close();
//发帖子的表格我们使用asp.net的服务器控件
} 2。发贴的代码:
private void btnSubmit_Click(object sender, System.EventArgs e)

{
//提交数据操作
//当然,首先要判断的数据的合法性
if(txtboxTitle.Text==""||txtboxContent.Text=="")

{
Response.Write("<font color='red'>title和content都不能为空</font>");
}
else

{
string dbname;
string strSQL;
dbname=Server.MapPath(@"data0621/database.mdb");
OleDbConnection conn=new OleDbConnection("PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA Source="+dbname);
conn.Open();
strSQL="select msg_title,msg_content,msg_time from tbl_msg";
OleDbDataAdapter myAdapter=new OleDbDataAdapter(strSQL,conn);
OleDbCommandBuilder cb=new OleDbCommandBuilder(myAdapter);
DataSet dss=new DataSet();
myAdapter.Fill(dss,"tbl_msg");
//添加一行
DataRow newRow=dss.Tables["tbl_msg"].NewRow();
newRow["msg_title"]=txtboxTitle.Text;
newRow["msg_content"]=txtboxContent.Text;
newRow["msg_time"]=DateTime.Now.ToString();
dss.Tables["tbl_msg"].Rows.Add(newRow);
//更新数据
myAdapter.Update(dss,"tbl_msg");
//关闭连接
conn.Close();
//因为不是Submit按钮,所以不能使页面刷新,利用asp里的思路,让浏览器刷新一下:-)
Response.Redirect("default.aspx");
}
}
平台:
Windows Server 2003 Enterprise Edtion (中文版)
Visual Studio.net 2003 Version 7.1.3091
.net Framework 1.1 Version 1.1.4322 SP1