無奈之下,基於現實的考慮,看來還是選.NET吧,起碼在我所處的這個城市,這個平台可以給我帶來工資上的微薄提升!
說開始就開始,先來熟悉數據庫的操作,慢慢將ASP的操作用ASP.NET過一遍
操作:連接數據庫,讀取表中數據
采用的是OLEDB方式讀取Access數據庫,需要引入System.Data.OleDb
復制代碼 代碼如下:
protected void Page_Load(object sender, EventArgs e)
{
OleDbConnection conn = new OleDbConnection();
conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("db.mdb");
conn.Open();
OleDbCommand cmd = new OleDbCommand("select * from [article]",conn);
OleDbDataReader dr = null;
dr = cmd.ExecuteReader();
while (dr.Read()) {
Response.Write(dr["art_title"].ToString() + "<br>");
Response.Write(dr["art_author"].ToString() + "<br>");
}
dr.Close();
conn.Close();
}
上面的代碼只是將代碼輸出到了客戶端,並沒有格式化,查看頁面源代碼,發現信息寫在了頁面之外。那麼怎麼正確輸出呢?試著做新的嘗試。我的要求是在表格裡輸出文章的標題和作者,首先添加一個Table控件,可以看到VS添加了如下的代碼:
程序代碼
復制代碼 代碼如下:
<asp:Table ID="Table1" runat="server" Height="208px" Width="358px">
</asp:Table>
查了查Table的用法,修改上次的代碼如下:
程序代碼
復制代碼 代碼如下:
TableRow tr;
TableCell tc;
while (dr.Read()) {
tr= new TableRow();
tc = new TableCell();
tc.Text = dr["art_title"].ToString();
tr.Controls.Add(tc);
tc = new TableCell();
tc.Text = dr["art_author"].ToString();
tr.Controls.Add(tc);
Table1.Controls.Add(tr);
}
讀取數據的同時,通過TableRow、TableCell生成表格行和單元格。生成網站,執行一下,數據合理的顯示到了表格中。