ASP.Net中实现XMl的标识列(ID列)或自增长列

说明:
在xml中不需要做任何特别操作,即ID列为string或int时,向xml文件中添加数据时实现ID的自增长
XMl文件:

ContractedBlock.gif ExpandedBlockStart.gif XML文件
None.gifxml version="1.0" standalone="yes"?>
None.gif
<Users xmlns="http://tempuri.org/User.xsd">
None.gif  
<user xmlns="">
None.gif    
<userid>1userid>
None.gif    
<username>李燕平username>
None.gif    
<userpass>123userpass>
None.gif    
<usermail>[email protected]usermail>
None.gif    
<usersite>438803482usersite>
None.gif    
<usermsn>[email protected]usermsn>
None.gif    
<ndate>2006-9-8 16:22:19 ndate>
None.gif    
<userpic>20060908041706167.jpguserpic>
None.gif  
user>
None.gif
Users>

以下给出三种方法:
一,代码如下

ContractedBlock.gif ExpandedBlockStart.gif 法一
None.gifXmlDocument doc = new XmlDocument();
None.gif
string filename = Server.MapPath(".//XML//User.xml");
None.gifdoc.Load(filename);
None.gifXmlNode root 
= doc.DocumentElement;
None.gifXmlNode user 
= doc.CreateElement("user");
None.gif
int userid = doc.SelectSingleNode("Users").ChildNodes.Count;

二.代码如下:

ContractedBlock.gif ExpandedBlockStart.gif 法二
None.gifDataSet ds = new DataSet();
None.gifds.ReadXml(filename); 
None.gif
int userid = ds.Tables[0].Rows.Count+1;

三,代码如下

ContractedBlock.gif ExpandedBlockStart.gif 法三
None.gifXmlDocument doc = new XmlDocument();
None.gif
string filename = Server.MapPath(".//XML//User.xml");
None.gifdoc.Load(filename);
None.gifXmlNode root 
= doc.DocumentElement;
None.gifXmlNode user 
= doc.CreateElement("user");
None.gif
string userid =Convert.ToString(Convert.ToInt32(root.LastChild.ChildNodes[0].InnerText)+1); 



 

转载于:https://www.cnblogs.com/tenghoo/archive/2006/10/11/525952.html

你可能感兴趣的:(ASP.Net中实现XMl的标识列(ID列)或自增长列)