六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

用Asp.net完成基于XML的留言簿

[摘要]一.概要:   留言簿是網(wǎng)站的一個重要組成部分,是訪問者發(fā)表意見的場所,也是網(wǎng)站管理員了解網(wǎng)站基本情況的有力工具。所以留言簿在現(xiàn)在的網(wǎng)站中扮演了重要的角色。   可是在以前開發(fā)一個留言簿并不是一件容...
一.概要:

  留言簿是網(wǎng)站的一個重要組成部分,是訪問者發(fā)表意見的場所,也是網(wǎng)站管理員了解網(wǎng)站基本情況的有力工具。所以留言簿在現(xiàn)在的網(wǎng)站中扮演了重要的角色。

  可是在以前開發(fā)一個留言簿并不是一件容易的事,開發(fā)者的工作量往往會很多。而現(xiàn)在隨著微軟推出VS.net,相應的技術(shù)推陳出新。特別是XML在.net Framework中的廣泛運用,使得整個.net構(gòu)架具有十分優(yōu)越的基礎(chǔ)。在VS.net推出的同時,也伴隨而來了一門新興的語言C#。C#作為微軟.net戰(zhàn)略的重要部分,具有特別優(yōu)秀的性能。所以本文的asp.net程序是用C#語言描述的,同時整個程序又是基于XML的。我用到了XML作為程序的數(shù)據(jù)庫,主要是因為所以的服務(wù)器都是支持XML文件的。


二.要求:

(1) .Net SDK Beta2及以后版本

(2) 支持Asp.net的Web服務(wù)器


三.說明:

本文的實例由兩部分組成:

(1) guestpost.aspx-將用戶信息添加到一個XML文件中

(2) viewguestbook.aspx-先建立一個數(shù)據(jù)集對象,建立后,就很容易顯示其中的數(shù)據(jù)了。我這里用到了一個“Repeater”來顯示數(shù)據(jù)集中的數(shù)據(jù)。還有,讀者可試著根據(jù)自己的喜好來修改查看頁。


四.代碼:

(1) guestpost.aspx:

< %@ Page Language="C#" EnableSessionState="False" % >
< %@ Import Namespace="System" % >
< %@ Import Namespace="System.IO" % >
< %@ Import Namespace="System.Data" % >
< %-- 這些是本程序正常運用所必須的名字空間 --% >

< html >
< head >
< title >歡迎來到我的留言簿< /title >
< script Language="C#" runat="server" >
///< summary >
/// 當提交(submit)按鈕按下后,調(diào)要這個函數(shù)
///< /summary >
public void Submit_Click(Object sender, EventArgs e)
{
//保存數(shù)據(jù)的XML文件的路徑
//如果你的路徑和下面的不同,則請修改之
string dataFile = "db/guest.xml" ;

//運用一個Try-Catch塊完成信息添加功能
try{
//僅當頁面是有效的時候才處理它
if(Page.IsValid){

errmess.Text="" ;
//以讀的模式打開一個FileStream來訪問數(shù)據(jù)庫
FileStream fin;
fin= new FileStream(Server.MapPath(dataFile),FileMode.Open,
FileAccess.Read,FileShare.ReadWrite);
//建立一個數(shù)據(jù)庫對象
DataSet guestData = new DataSet();
//僅從數(shù)據(jù)庫讀取XML Schema
guestData.ReadXmlSchema(fin);
fin.Close();
//從數(shù)據(jù)集的Schema新建一個數(shù)據(jù)行
DataRow newRow = guestData.Tables[0].NewRow();
//用相應值填寫數(shù)據(jù)行
newRow["Name"]=Name.Text;
newRow["Country"]=Country.Text;
newRow["Email"]=Email.Text;
newRow["Comments"]=Comments.Text;
newRow["DateTime"]=DateTime.Now.ToString();
//填寫完畢,將數(shù)據(jù)行添加到數(shù)據(jù)集
guestData.Tables[0].Rows.Add(newRow);
//為數(shù)據(jù)庫文件新建另一個寫模式的FileStream,并保存文件
FileStream fout ;
fout = new FileStream(Server.MapPath(dataFile),FileMode.Open,
FileAccess.Write,FileShare.ReadWrite);

guestData.WriteXml(fout, XmlWriteMode.WriteSchema);
fout.Close();
//隱藏當前的面板
formPanel.Visible=false;
//顯示帶有感謝信息的面板
thankPanel.Visible=true;
}
}
catch (Exception edd)
{
//捕捉異常
errmess.Text="寫入XML文件出錯,原因:"+edd.ToString() ;
}
}
< /script >
< LINK href="mystyle.css" type=text/css rel=stylesheet >
< /head >

(2) viewguestbook.aspx:

< %@ Page Language="C#" % >
< %@ Import Namespace="System" % >
< %@ Import Namespace="System.IO" % >
< %@ Import Namespace="System.Data" % >
< %-- 以上是所需的名字空間 --% >

< html >
< head >
< title >歡迎來到我的留言簿< /title >
< script language="C#" runat=server >
//頁面下載完畢后,運行這個腳本
public void Page_Load(Object sender, EventArgs e)
{
//包含所有數(shù)據(jù)的XML文件的路徑
//如果你的路徑和下面的不同,則請修改
string datafile = "db/guest.xml" ;

//運用一個Try-Catch塊完成信息讀取功能
try
{
//建立一個數(shù)據(jù)集對象
DataSet guestData = new DataSet();
//為數(shù)據(jù)庫文件打開一個FileStream
FileStream fin ;
fin = new FileStream(Server.MapPath(datafile),FileMode.Open,
FileAccess.Read,FileShare.ReadWrite) ;
//把數(shù)據(jù)庫中內(nèi)容讀到數(shù)據(jù)集中
guestData.ReadXml(fin);
fin.Close();
//將第一個表中的數(shù)據(jù)集付給Repeater
MyDataList.DataSource = guestData.Tables[0].DefaultView;
MyDataList.DataBind();
}
catch (Exception edd)
{
//捕捉異常
errmess.Text="不能從XML文件讀入數(shù)據(jù),原因:"+edd.ToString() ;
}
}
< /script >
< LINK href="mystyle.css" type=text/css rel=stylesheet >
< /head >


五.總結(jié):

  這個程序完成了,相信大家對實現(xiàn)原理以及技巧都有了大致的了解。通過本文,我主要是想向大家展示用XML處理一些數(shù)據(jù)庫問題時的優(yōu)點:服務(wù)器都支持XML文件,而且處理過程相當簡潔明了。當然,用XML也有它的不足之處,就是當數(shù)據(jù)庫很大時,解析過程會花費相當長的時間,因此還是要采用大型的數(shù)據(jù)庫系統(tǒng)的。所以,我只想通過此文起到拋磚引玉的作用。


主站蜘蛛池模板: 亚洲第一页国产 | 日韩欧美精品在线 | 在线 色 | 欧美一区色 | 午夜在线观看免费观看大全 | 亚洲一区有码 | 日韩欧美在线视频 | 色欧美在线视频 | 日本在线观看免费 | 色噜噜色噜噜天天拍一拍 | 欧洲日韩视频二区在线 | 日本在线观看网址 | 片免费观看在线看 | 亚洲欧美久久精品 | 四虎欧美永久在线精品免费 | 欧美在线播放一区二区 | 鸥美一级黄色片 | 青草免费免费观看视频在线 | 天天色天天色 | 求欧美精品网址 | 日本黄网站高清色大全 | 欧美亚洲一区 | 日韩欧美亚洲乱码中文字幕 | 一二三四影视大全免费观看电视剧 | 伊人影视频| 影音先锋亚洲资源 | 四虎影永久在线高清免费 | 青草国产视频 | 思思99re66在线精品免费观看 | 天天看片天天爽_免费播放 天天看片天天爽 | 忘忧草一区 | 欧美专区在线 | 欧美视频色 | 色91视频| 四虎免费久久影院 | 亚洲 欧美 91| 午夜私人影院粉色视频我要 | 色视频免费网站 | 日本高清二区 | 日本不卡视频免费 | 天天躁夜夜躁狠狠躁2024 |