|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
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写的,很简单)、业务逻辑层(主要就是应用服务器的)。最后就是数据层(其实就是学习数据库) |
|