仓酷云

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

[学习教程] ASP.NET网页设计C#的Web XML编程

[复制链接]
山那边是海 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:29:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
一般的指的.net就是跟java相对的那种,主要是做企业级应用的。你如果想学这个,主要就是学C#和数据库。(ASP.NET好像很重要的,应该也要学的,ASP.NET上好像可以结合VB和C#等多种语言,但是微软主推C#)因为XML的易共享性等浩瀚长处,XML手艺愈来愈多地被使用于企业数据处置等范畴,如使用于企业报表、旧事公布、管帐数据处置等等。
XML正疾速成为从两头层传送数据到桌面的工具,因为XML的数据能够经由过程两头层代办署理与多种后端(数据库)源集成,今朝尽年夜多半数据库打造商已周全撑持XML手艺,供应了各类壮大功效处置XML数据。
Microsoft的.NET环绕XML这一中心供应了一个壮大而疾速的开辟工具——C#,它具有亘古未有的高开辟效力,出格是在XML编程方面。
C#供应了很多相干类处置XML数据,如处置stream的类:XmlReader和XmlWriter;DOM的类:XmlNode、XmlDocument和XmlElement等;Xpath的类:XmlNavigator;XSLT的类:XslTransform。
显现XML文件内容
用C#编程完成显现XML文件中信息的办法是利用.NET供应的尺度类把XML文件内容读进一个StreamReader类工具中,再用XmlDataDocument类的DataSet读XML的办法往读XML信息到DataSet中,DataSet再以DataView的体例赋给一个WebForm上的DataGrid,最初由DataBind显现数据,详细完成代码以下:
usingSystem.Xml;
//处置XML必需加的Namespace,还需在References中加System.XML.Dll
usingSystem.IO;
//读XML文件必需加的Namespace

然后在Page_Load中到场以下代码:
protectedvoidPage_Load(objectsender,EventArgse){
stringdatafile="guest.xml";
//假定XML文件名为guest.xml
StreamReadertyj=newStreamReader(Server.MapPath(datafile));
XmlDataDocumentdatadoc=newXmlDataDocument();
//创立该工具为了读取XML
datadoc.DataSet.ReadXml(tyj);
//读取guest.xml文件内容
DataGrid1.DataSource=datadoc.DataSet.Tables[0].DefaultView;
//设置DataGrid数据源
DataGrid1.DataBind();
//绑定
datadoc=null;
//开释资本
tyj.Close();}
//开释StreamReader类,这十分主要,不然下次翻开会显现文件已被利用

对应于显现用的WebForm中DataGrid的功效,我们必要增添上面的函数:
protectedvoidOnSelectName(objectsender,EventArgse){
Session["select_name"]=(string)DataGrid1.SelectedItem.Cells[1].Text.ToString();
//把选定的DataGrid某行中的一个单位中的值(Name)存进一个会话变量中,以便下一页用
Response.Redirect("xml_manage.aspx");}
//转到有增添删除功效的办理页

WebForm到场以下代码:
<asp:DataGridid=DataGrid1runat="server"onselectedindexchanged="OnSelectName">
<propertyname="Columns">
<asp:buttoncolumnText="选择"commandname="Select"/>
</property>

代码的感化是当按了“选择”按钮后,实行OnSelectName()中的程序,把选定的DataGrid中某行中的一个单位中的值(Name)存进一个会话变量中,然后转到下一页。
增添XML文件内容
在WebForm中增添响应的几个TextBox和一个用于提交的Button,如本文附图所示,并为这button增添以下代码:
stringdatafile="guest.xml";XmlDocumentxmldocument=newXmlDocument();
xmldocument.Load(Server.MapPath(datafile));
//把guest.xml读到xmldocument中
DocumentNavigatornavigator=newDocumentNavigator(xmldocument);
//最主要的类
navigator.MoveToDocumentElement();
navigator.Insert(System.Xml.TreePosition.FirstChild,XmlNodeType.Element,"Guest","","");//拔出节点Guest
navigator.Insert(System.Xml.TreePosition.FirstChild,XmlNodeType.Element,"Name","","");
navigator.Insert(System.Xml.TreePosition.FirstChild,XmlNodeType.Text,"Name","","");
navigator.Value=Name.Text;
//为该节点赋值
navigator.MoveToParent();
//前往父节点Guest
……
//利用同类语句,在元素Name下拔出另外一些元素如Country、E-mail地点和留言等
xmldocument.Save(Server.MapPath(datafile));
//最初保留这个XML文档
navigator=null;
xmldocument=null;
//开释XML文档,如许其他程序能够用它

上述代码利用DocumentNavigator类增添元素和内容,注重利用后要开释资本。
删除XML文件内容
删除选定纪录,关于你下面选择的节点,上面代码可查找到该节点并扫除选中的信息:
stringdatafile="guest.xml";
XmlDocumentxmldocument=newXmlDocument();
xmldocument.Load(Server.MapPath(datafile));
//把guest.xml读到xmldocument中
DocumentNavigatornavigator=newDocumentNavigator(xmldocument);
navigator.MoveToDocumentElement();
navigator.Select("/Guests/Guest[Name="+Session["select_name"]+"]");
//参数是Xpath
navigator.RemoveSelected();
//实行删除
xmldocument.Save(Server.MapPath(datafile));
//最初保留这个XML文档
navigator=null;
//开释类
xmldocument=null;
//开释XML文档,如许其他程序能够用它

如需将XML文件中一切信息扫除,利用“navigator.RemoveChildren();”语句便可完成。
结论
综上可知,C#编写XML使用程序不仅快速并且便利,在编写ASP.NET数据库使用程序时,用XML文件替换一些小的Table,能削减很多数据库存取毗连,也能让其他收集程序更容易利用这些数据。
今朝XML的次要瓶颈在于文件体系的读出或写进,故应利用更多内存弛缓存体例,假如信息量不是伟大非常且修正量也较小,而扫瞄量伟大的话,利用XML办法将是很好的选择;相反,如数据量伟大,招考虑利用撑持XML的数据库,不管你利用ADO+毗连其他数据库,仍是利用SQLserver,C#中都有间接的类函数可以让这些数据库中的信息间接和XML交互会见。

有时也搞不懂应该学那种;主要看你以后去的那个公司是使用哪种了。就像王千祥的课上说的:企业应用现在主要就三层(其实也差不多就是MVC):表示层(主要使用html写的,很简单)、业务逻辑层(主要就是应用服务器的)。最后就是数据层(其实就是学习数据库)
莫相离 该用户已被删除
沙发
发表于 2015-1-19 15:06:51 | 只看该作者
它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。
灵魂腐蚀 该用户已被删除
板凳
发表于 2015-1-27 05:18:41 | 只看该作者
现在的ASP.net分为两个版本:1.1和2.0Asp.net1.1用VS2003(visualstudio2003)编程。Asp.net2.0用VS2005(visualstudio2005)编程。现在一般开发用的是VS2003。
小魔女 该用户已被删除
地板
发表于 2015-2-5 02:14:05 | 只看该作者
当然我们在选择Asp.net主机是,除了要考虑服务提供商在版本是否是实时更新以外,机房的环境和配置也是非常重要的,通常选择骨干网的机房,在速度和稳定性上会非常有保证。
5#
发表于 2015-2-11 02:47:45 | 只看该作者
是目前ASP在UNIX/Linux上的应用可以说几乎为0)。所以平台的局限性和ASP自身的安全性限制了ASP的广泛应用。
再现理想 该用户已被删除
6#
发表于 2015-3-1 19:59:50 | 只看该作者
微软又推出ASP.NET。这不是ASP的简单升级,而是全新一代的动态网页实现系统,用于一台WEB服务器建立强大的应用程序。是微软发展的新体系结构.NET的一部分,是ASP和.NET技术的结合。
爱飞 该用户已被删除
7#
发表于 2015-3-10 23:23:41 | 只看该作者
代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。
谁可相欹 该用户已被删除
8#
发表于 2015-3-17 16:08:13 | 只看该作者
是指转换后的Servlet程序代码的行数。这给调试代码带来一定困难。所以,在排除错误时,可以采取分段排除的方法(在可能出错的代码前后输出一些字符串,用字符串是否被输出来确定代码段从哪里开始出错)。
蒙在股里 该用户已被删除
9#
发表于 2015-3-24 11:16:55 | 只看该作者
ASP.NET可以无缝地与WYSIWYGHTML编辑器和其他编程工具(包括MicrosoftVisualStudio.NET)一起工作。这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到Web页的GUI和完全集成的调试支持。微软为ASP.net设计了这样一些策略:易于写出结构清晰的代码、代码易于重用和共享、可用编译类语言编写等等,目的是让程序员更容易开发出Web应用,满足计算向Web转移的战略需要。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-5-6 21:05

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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