用Asp.net实现基于XML的留言簿之二

四.代码:

(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)按钮按下后,调要这个函数
///< /summary >
public void Submit_Click(Object sender, EventArgs e)
{
file://保存数据的XML文件的路径
file://如果你的路径和下面的不同,则请修改之
string dataFile = "db/guest.xml" ;

file://运用一个Try-Catch块完成信息添加功能
try{
file://仅当页面是有效的时候才处理它
if(Page.IsValid){

errmess.Text="" ;
file://以读的模式打开一个FileStream来访问数据库
FileStream fin;
fin= new FileStream(Server.MapPath(dataFile),FileMode.Open,
FileAccess.Read,FileShare.ReadWrite);
file://建立一个数据库对象
DataSet guestData = new DataSet();
file://仅从数据库读取XML Schema
guestData.ReadXmlSchema(fin);
fin.Close();
file://从数据集的Schema新建一个数据行
DataRow newRow = guestData.Tables[0].NewRow();
file://用相应值填写数据行
newRow["Name"]=Name.Text;
newRow["Country"]=Country.Text;
newRow["Email"]=Email.Text;
newRow["Comments"]=Comments.Text;
newRow["DateTime"]=DateTime.Now.ToString();
file://填写完毕,将数据行添加到数据集
guestData.Tables[0].Rows.Add(newRow);
file://为数据库文件新建另一个写模式的FileStream,并保存文件
FileStream fout ;
fout = new FileStream(Server.MapPath(dataFile),FileMode.Open,
FileAccess.Write,FileShare.ReadWrite);

guestData.WriteXml(fout, XmlWriteMode.WriteSchema);
fout.Close();
file://隐藏当前的面板
formPanel.Visible=false;
file://显示带有感谢信息的面板
thankPanel.Visible=true;
}
}
catch (Exception edd)
{
file://捕捉异常
errmess.Text="写入XML文件出错,原因:"+edd.ToString() ;
}
}
< /script >
< LINK href="mystyle.css" type=text/css rel=stylesheet >
< /head >

< body >
< %-- 包含一个头文件:header.inc --% >
< !-- #Include File="header.inc" -- >
< br >
< h3 align="center" class="newsbody" >留言者信息< /h3 >
< br >
< asp:label id="errmess" text="" style="color:#FF0000" runat="server" / >
< asp:Panel id=formPanel runat=server >
< form runat="server" >
< table border="0" width="80%" align="Center" >
< tr >
< td class="newsheading" >< b >请在我留言簿留下您宝贵的信息!!< /b >< /td >
< td class="newsheading" > < /td >
< /tr >
< tr class="newsbody" >
< td >姓名:< /td >
< td >< asp:textbox text="" id="Name" runat="server" / >
< asp:RequiredFieldValidator ControlToValidate=Name display=static
runat=server >
*< /asp:RequiredFieldValidator >< /td >< /tr >
< tr class="newsbody" >< td >国家:< /td >
< td >< asp:textbox text="" id="Country" runat="server"/ >
< asp:RequiredFieldValidator ControlToValidate=Country display=static
runat=server >
*< /asp:RequiredFieldValidator >< /td > < /tr >
< tr class="newsbody" >< td >E-Mail:< /td >
< td >< asp:textbox test="" id="Email" runat="server"/ >
< asp:RequiredFieldValidator ControlToValidate=Email display=static
runat=server >
*< /asp:RequiredFieldValidator >< asp:RegularExpressionValidator
runat="server"
ControlToValidate="Email"
ValidationExpression="[\w-]+@([\w-]+\.)+[\w-]+"
Display="Static"
Font-Name="verdana" Font-Size="10pt" >
请输入一个格式正确的Email地址!< /asp:RegularExpressionValidator >< /td >
< /tr >< tr class="newsbody" >< td >留言:< /td >
< td >< asp:Textbox textmode=multiline id="Comments" columns="25"
rows="4" runat="server" / >< /td >< /tr >
< tr class="newsbody" >
< td colspan="2" >
< asp:Button class="newsheading" id="write" Text="Submit"
runat="server"/ >< /td >< /tr >< /table >< /form >< /asp:Panel >

< asp:Panel id=thankPanel visible=false runat=server >
< p class="newsbody" align=center >< b >谢谢访问我的留言簿!< /b >
< br >< a href="viewguestbook.aspx" >请点击这里 < /a > 查看留言簿。
< /p >
< /asp:Panel >
< !-- #Include File="footer.inc" -- >
< /body >
< /html >

时间: 2024-09-29 16:03:07

用Asp.net实现基于XML的留言簿之二的相关文章

用Asp.net实现基于XML的留言簿

asp.net|xml 一.概要: 留言簿是网站的一个重要组成部分,是访问者发表意见的场所,也是网站管理员了解网站基本情况的有力工具.所以留言簿在现在的网站中扮演了重要的角色. 可是在以前开发一个留言簿并不是一件容易的事,开发者的工作量往往会很多.而现在随着微软推出VS.net,相应的技术推陈出新.特别是XML在.net Framework中的广泛运用,使得整个.net构架具有十分优越的基础.在VS.net推出的同时,也伴随而来了一门新兴的语言C#.C#作为微软.net战略的重要部分,具有特别优

用Asp.net实现基于XML的留言簿之一

一.概要: 留言簿是网站的一个重要组成部分,是访问者发表意见的场所,也是网站管理员了解网站基本情况的有力工具.所以留言簿在现在的网站中扮演了重要的角色. 可是在以前开发一个留言簿并不是一件容易的事,开发者的工作量往往会很多.而现在随着微软推出VS.net,相应的技术推陈出新.特别是XML在.net Framework中的广泛运用,使得整个.net构架具有十分优越的基础.在VS.net推出的同时,也伴随而来了一门新兴的语言C#.C#作为微软.net战略的重要部分,具有特别优秀的性能.所以本文的as

用Asp.net实现基于XML的留言簿之三

(2) viewguestbook.aspx:< %@ Page Language="C#" % >< %@ Import Namespace="System" % >< %@ Import Namespace="System.IO" % >< %@ Import Namespace="System.Data" % >< %-- 以上是所需的名字空间 --% ><

用ASP开发基于XML的留言板

XML(Extensible Markup Language)是一种基于文本格式的标记语言,它注重对数据结构和数据意义的描述,实现了数据内容和显示样式的分离,而且是与平台无关的.由于XML注重数据内容的描述,因而,对于数据的检索非常有意义,我们不会再象HTML那样,检索出与我们要求无关的信息.另一方面,XML文件是数据的载体,利用XML作为数据库,不需要访问任何数据库系统,我们可以使用任意WEB技术来显示我们的数据,比如HTML,Flash 5 等.由于世界各大计算机公司的积极参与,XML正日益

第三种途径---基于XML的ASP留言板

坦白地说,对于ASP我一直都不怎么感兴趣.如果要我写这种服务器端程序的话,我会选择JSP.所以,本人一直都想在网上弄个便宜点的JSP空间:可是正如miles前辈所说,连贵一点的都没有,更不用说便宜的了.没办法,只好用ASP了,对于用ASP写留言板的主要途径,只要是地球人就都知道,用得最多的无外乎就是文件组件与数据库组件:而大多提供ASP的服务商基于安全都禁用了文件组件,也有的禁用了数据库组件.当然,就算用不了这两个组件,也并不代表我们就不能用脚本来创建文件和修改文件了,我们还有第三种途径:MSX

ASP开发基于XML的留言板

XML(Extensible Markup Language)是一种基于文本格式的标记语言,它注重对数据结构和数据意义的描述,实现了数据内容和显示样式的分离,而且是与平台无关的.由于XML注重数据内容的描述,因而,对于数据的检索非常有意义,我们不会再象HTML那样,检索出与我们要求无关的信息.另一方面,XML文件是数据的载体,利用XML作为数据库,不需要访问任何数据库系统,我们可以使用任意WEB技术来显示我们的数据,比如HTML,Flash 5 等.由于世界各大计算机公司的积极参与,XML正日益

用ASP.NET创建管理XML WEB服务全接触

asp.net|web|web服务|xml|创建 Internet的发展已经用它超乎想象的力量重新规划了应用程序开发领域.公司和机构越来越依赖因特网和有关技术提供的数字资源和通讯渠道.因而,现在设计和开发的应用程序很少不考虑如何最好的整合和运用Internet技术.在应用程序中整合Internet技术成为业界对开发技术的提出的新的要求.微软适时提出的以XML为基础的Web服务满足了这种需求,本期专题我将向大家介绍利用ASP.NET的创建和管理XML WEB服务的过程. 概述 XML Web服务是

实战ASP(7):使用ASP、VB和XML建立运行于互联网上的应用程序(上)

xml|程序|互联网|xml|互联网 使用ASP.VB和XML建立运行于互联网上的应用程序(1)     在个人电脑上使用单机版应用软件的时代很快就要过去了,现在大部分的应用程序都开发出网络版或大都需要共享网络上丰富的数据资源.我们虽然写了很长时间基于客户端/服务器的应用程序,但是这些程序大部分只是运行在小型的局域网内部.然而,有很多客观的原因要求我们要修改这些程序以使它们能够运行在一个企业的内部网甚至是国际互联网. 是什么原因迫使我们做呢?首先,随着一个企业的规模逐渐扩大,公司可能会跨地区甚至

ASP、VB和XML建互联网应用程序1

用ASP.VB和XML建立互联网应用程序(1) 在个人电脑上使用单机版应用软件的时代很快就要过去了,现在大部分的应用程序都开发出网络版或大都需要共享网络上丰富的数据资源.我们虽然写了很长时间基于客户端/服务器的应用程序,但是这些程序大部分只是运行在小型的局域网内部.然而,有很多客观的原因要求我们要修改这些程序以使它们能够运行在一个企业的内部网甚至是国际互联网. 是什么原因迫使我们做呢?首先,随着一个企业的规模逐渐扩大,公司可能会跨地区甚至跨国经营,每个分公司的员工的数量也会逐年增多,这些在外地的