仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 415|回复: 8
打印 上一主题 下一主题

[学习教程] ASP编程:接纳XML数据来添补ASP表单

[复制链接]
逍遥一派 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:35:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
asp可以使用微软的activeX使得网页功能无比强大,不过安全性也较差,而且是基于的windows服务器,所以性能稳定性也一般本文作者BrianSchaffner是富士通征询公司的副主任。他为富士通的手艺征询公司供应架构、计划和开辟撑持。
在本篇文章里,我们会利用一个复杂的Web表单,它会列出某个目次下的一些XML文件。然后,我们会从这个目次里选择一个文件,将它发送到另外一个Web表单里,后者会利用被选中的XML文件来添补某些文本字段。
示例XML

我们的示例XML文档包括有一组含有基础信息的元素,如ListingA所示:
ListingA:sample.xml
<Sample>
<Name>JohnDoe</Name>
<Address>900N.MichiganAve</Address>
<City>Chicago</City>
<State>IL</State>
<Zip>60614</Zip>
<Phone>630-555-5555</Phone>
</Sample>
为了让本文的申明加倍风趣,我们会再创立两个含有分歧数据的示例文件,如ListingB和ListingC所示:
ListingB:sample2.xml
<Sample>
<Name>GeorgeW.Bush</Name>
<Address>1600PennsylvaniaAveNW</Address>
<City>Washington</City>
<State>DC</State>
<Zip>20500</Zip>
<Phone>202-456-1111</Phone>
</Sample>
ListingC:sample3.xml
<Sample>
<Name>BillGates</Name>
<Address>1MicrosoftWay</Address>
<City>Redmond</City>
<State>WA</State>
<Zip>98052</Zip>
<Phone>425-882-8080</Phone>
</Sample>
创立一个叫做C:xmldocs的目次,并将一切三个示例文件放到这个目次下。
Web表单

我们会为我们的使用程序创立两个Web表单。我们要用第一个表单来选择XML文件,用第二个表单来显现XML数据。
起首要用VisualStudio.NET创立一个新的ASP.NETWeb使用程序。然后将最后的表单保留为SelectFile.aspx。假如你双击这个表单,代码编纂器就会被翻开。
你起首必要把上面这一行加到代码的最后面,才干够将IO包增加到你的使用程序里:
usingSystem.IO;
然后,找到代码内的Page_Load()办法。你必要将这个办法编纂成像上面ListingD里的代码一样:
ListingD:SelectFilesPage_Load()method
privatevoidPage_Load(objectsender,System.EventArgse){
System.IO.DirectoryInfodir;
System.IO.FileInfo[]files;
System.IO.FileInfofinfo;
System.Collections.IEnumeratorfileEnum;
dir=newDirectoryInfo("C:xmldocs");
files=dir.GetFiles("*.xml");
fileEnum=files.GetEnumerator();
Response.Write("PleaseselecttheXMLfiletoload:<br><br>
");
while(fileEnum.MoveNext()){
finfo=(FileInfo)fileEnum.Current;
Response.Write("<ahref="ShowData.aspx?filename="+finfo.Name+"">"+finfo.Name+"</a><br>
");
}
}
如今向你的项目里增加一个新的Web表单――ShowData.aspx。在这个表单里安排六个文本框,并将其定名为:txtName、txtAddress、txtCity、txtState、txtZip和txtPhone。一样的,在表单里创立六个标签,并将其题目栏分离定名为Name(姓名)、Address(地点)、City(乡村)、State(州)、Zip(邮政编码)和Phone(德律风)。
双击ShowData表单来启动代码编纂器。你必要编纂ShowData表单的Page_Load()办法,使其看起来就像ListingE里的一样:
ListingE:ShowDatasPage_Load()method
privatevoidPage_Load(objectsender,System.EventArgse){
stringfilename;
XmlTextReaderxmlReader;
filename="C:xmldocs"+Request.Params.Get("filename");
xmlReader=newXmlTextReader(filename);
while(xmlReader.Read()){
if(xmlReader.NodeType==XmlNodeType.Element){
switch(xmlReader.LocalName){
case"Name":
txtName.Text=xmlReader.ReadString();
break;
case"Address":
txtAddress.Text=xmlReader.ReadString();
break;
case"City":
txtCity.Text=xmlReader.ReadString();
break;
case"State":
txtState.Text=xmlReader.ReadString();
break;
case"Zip":
txtZip.Text=xmlReader.ReadString();
break;
case"Phone":
txtPhone.Text=xmlReader.ReadString();
break;
}
}
}
}
你还必要把上面这一行加到代码的最后面,才干够将XML包增加到你的使用程序里:
usingSystem.Xml;
这段代码在实质上同我们在C#表单例子里所利用的代码不异。其次要的分歧的地方在于,我们不再使用按钮来挪用这段代码,并且我们也不再必要利用OpenFileDialog控件来寻觅XML文件。文件名是由SelectFile的Web表单所供应的,这段代码在ShowData表单被加载的时分被挪用。
我们利用XmlTextReadersRead()办法在XML文档里迭代。跟着每次对Read()的挪用,我们城市处置另外一个XML节点。我们只用复杂地反省一下,以确保该节点是一个元素,然后就能够利用XML元素节点里的字符串数据来添补我们表格里响应的文本框了。
运转演示程序
一旦你完成了演示表单的编码和编译,你就已筹办好利用它们了。将你的Web扫瞄器指向SelectFile表单。当页面被载进的时分,它就应当可以列出我们先前创立的示例文件了。只用复杂地址击个中一个文件名,你就会看到数据添补在ShowData表单里。
ActiveServerPage技术为应用开发商提供了基于脚本的直观、快速、高效的应用开发手段,极大地提高了开发的效果。在讨论ASP的安全性问题之前,让我们来看看ASP是怎么工作的。
海妖 该用户已被删除
沙发
发表于 2015-1-19 17:48:46 | 只看该作者
Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write
若相依 该用户已被删除
板凳
发表于 2015-1-27 07:10:33 | 只看该作者
ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。
飘飘悠悠 该用户已被删除
地板
发表于 2015-2-5 03:52:24 | 只看该作者
还有如何才能在最短的时间内学完?我每天可以有效学习2小时,双休日4小时。
乐观 该用户已被删除
5#
发表于 2015-2-11 03:42:38 | 只看该作者
它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。
第二个灵魂 该用户已被删除
6#
发表于 2015-3-1 21:00:16 | 只看该作者
不是很难但是英文要有一点基础网上的教程很少有系统的详细的去买书吧,另不用专门学习vb关于vbscript脚本在asp教材都有介绍
冷月葬花魂 该用户已被删除
7#
发表于 2015-3-10 23:46:16 | 只看该作者
从事这个行业,那么你可以学ASP语言,简单快速上手,熟练dreamweav排版,写asp代码,熟练photoshop处理图片,打好基础就行了
简单生活 该用户已被删除
8#
发表于 2015-3-17 16:10:42 | 只看该作者
我想问如何掌握学习节奏(先学什么再学什么)最好详细点?
小魔女 该用户已被删除
9#
发表于 2015-3-24 11:49:37 | 只看该作者
另外因为asp需要使用组件,所以了解一点组件的知识(ADODB也是组件)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-25 02:37

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表