对ASP.NET中XML操作的一点体会
先说SiteMapPath吧,也就是网站的站点地图
首先建一个sitemap文件,
<?xml version="1.0" encoding="utf-8"?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0">
<siteMapNode url="sit1mp.aspx" title="首页" description="">
<siteMapNode url="Default.aspx" title="产品信息" description="" >
<siteMapNode url="productdetails.aspx" title="产品详细信息" description="" />
</siteMapNode>
<siteMapNode url="register.aspx" title="新用户注册"/>
<siteMapNode url="Demand.aspx" title="产品信息" description="">
</siteMapNode>
<siteMapNode url="Projects.aspx" title="招投标信息" description="">
<siteMapNode url="DownLoad.aspx" title="相关表格下载" description="" />
<siteMapNode url="ProjectInfor.aspx" title="招投标详细信息" description="" />
</siteMapNode>
<siteMapNode url="Default2.aspx" title="新闻" description="">
<siteMapNode url="Default3.aspx" title="行业资讯详细信息" description="" />
<siteMapNode url="company_details.aspx" title="会员展厅详细信息" description="" />
<siteMapNode url="ManuscriptFront.aspx" title="在线投稿" description="" />
<siteMapNode url="subject_detail.aspx" title="专题栏目详细信息" description="" />
<siteMapNode url="expertinterview_detail.aspx" title="人物专访详细信息" description="" />
</siteMapNode>
<siteMapNode url="ForeTrain.aspx" title="培训咨询" description="">
<siteMapNode url="TrainInfor.aspx" title="培训详细信息" description="" />
<siteMapNode url="BusiHandBook.aspx" title="商务手册" description="" />
<siteMapNode url="Technology.aspx" title="技术咨询" description="">
<siteMapNode url="TechInfor.aspx" title="技术信息" description=""/>
</siteMapNode>
<siteMapNode url="Expert.aspx" title="专家顾问团" description="" />
</siteMapNode>
<siteMapNode url="ExhibitFront.aspx" title="机电信息展览馆" description="">
<siteMapNode url="exhibit_detail.aspx" title="会展详细信息" description=""/>
</siteMapNode>
</siteMapNode>
</siteMap>
SiteMapPath控件会自动识别这个文件,不过一定要注意Web.sitemap中的第一个URL的值,设为当前页就可以看到;
而其它的两个控件TreeView和Menu,则必须要用到SiteMapDataSource控件,然后设置DataSourceID="SiteMapDataSource1"即可,
然而有人说:
在web.config文件中的配置如下:
<system.web>
<siteMap defaultProvider="XmlSiteMapProvider" enabled="true">
<providers>
<add name="XmlSiteMapProvider"
description="SiteMap provider which reads in .sitemap XML files."
type="System.Web.XmlSiteMapProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
siteMapFile="web.sitemap"/>
</providers>
</siteMap>
</system.web>
一个有效的网站地图文件仅在 siteMap 元素下包含唯一的 siteMapNode 元素定义。但是位于第一层的 siteMapNode 元素却可以包含若干个 siteMapNode 子元素。另外,有效的网站地图文件中还不允许出现重复的 URL 地址,但是 url 参数允许为空。然而除默认网站地图提供者之外的其他提供者则没有这个限制。
XML的使用:
可以用XmlDocument doc=new XmlDocument ();
doc.load("xml文件");
XmlNode,XmlNodeList;
XmlNode node=doc.SelectSingleNode("节点名称");
XmlNodeList nodelist=doc.SelectNodes("节点名称");
XmlNode root=doc.DocumentElement;(这样的话是默认的根元素)
XmlElement
XmlNode 可以转换为XmlElement ,但XmlElement 不一定可以转换为XmlNode
保存XML文件用:doc.save("文件");
删除某个结点用:root.RemoveChild("节点名称");全删用:RemoveAll();
节点内的内容可以用:node.innerText或innerHtml;
也可以用流的方式读取(XmlReader()),这个我还没弄懂,哎……
浙公网安备 33010602011771号