ASP.net 如何在后台用C#对XML进行增加多个根节点的操作?

RT,因为是刚刚接触XML,第一次用,因为数据源绑定的XML,为了达到无限极的扩展,所以用C#语言在后台联合SQL对XML进行了写数据的操作;
但是貌似XML只能一个根节点?
有什么解决办法吗?

请大家帮忙解决~谢谢!
部分代码如下:
private void DataBindToTreeView()
{
//连接数据库
string constr = "server=.;database=TEST_DB;uid=sa;pwd=1;";
SqlConnection con = new SqlConnection(constr);
SqlCommand cmd = new SqlCommand("select * from Power", con);
con.Open();
SqlDataReader reader = cmd.ExecuteReader();
//新建XML文档
XmlDocument doc = new XmlDocument();
XmlElement root;
XmlElement element;

//插入XML声明
XmlDeclaration dec = doc.CreateXmlDeclaration("1.0", null, "yes");
doc.InsertBefore(dec, doc.DocumentElement);

//用来记录根节点元素
ArrayList elements = new ArrayList();

//插入第一个节点
reader.Read();
element = doc.CreateElement(reader["PowerName"].ToString());//**********************
elements.Add(element);
doc.InsertAfter(element, dec);

//插入后面的子节点
while (reader.Read())
{
//创建子节点
element = doc.CreateElement(reader["PowerName"].ToString());
elements.Add(element);

//找到它的父节点然后插到其下
root = (XmlElement)elements[(Convert.ToInt32(reader["ParentID"]))];//********************
root.AppendChild(element);

}

//保存XML文件
FileStream fs = new FileStream(@"E:\xml\names.xml", FileMode.Create);
doc.Save(fs);
fs.Close();

//设置XML数据源控件并把它绑定要Treeview上
XmlDataSource1.DataFile = @"E:\xml\names.xml";

}

XML是只能有一个根节点,可以在根节点下面扩展。
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-04-28
看看这个链接:XML操作基础,看完了保证你操作XML轻松自如

参考资料:http://zdbase.com/srm/srm/content/detail.aspx?OID=61A267E9-5B91-47DE-AF1D-FC5FDB62DB62

怎么使用(c#)asp.net打开一个xml文件然后对它进行修改保存。后台工作...
方法一 :使用XML控件 <% @ Page Language="C#"%> 读取XML方法一 <from runat=server> <asp:Xml id="xml1" DocumentSource="grade.xml" runat="server" \/> <\/from> 方法二: 使用DOM技术 <% @ Page Language="C#"%> <% @ Import Namespace="System.Xml"%> <% @ Import Name...

asp.net(c#) 中xml具体用法
1、往<bookstore>节点中插入一个<book>节点: XmlDocument xmlDoc=new XmlDocument(); xmlDoc.Load("bookstore.xml"); XmlNode root=xmlDoc.SelectSingleNode("bookstore");\/\/查找<bookstore> XmlElement xe1=xmlDoc.CreateElement("book");\/\/创建一个<book>节点 xe1.SetAttribute("genre","李赞红");\/\/设置...

如何在后台代码中创建div asp.net C#
顶 后台输出就可以 比如 string html="";html+="后台代码创建div";Response.write(html);Response.end();Response 是专门用来相应客户端Request的 Response.write() 输出的字符 是直接反馈给浏览器的

asp.net 中如何在后台用c#代码实现div的显示和隐藏?
只有把div转成服务器控件才可以通过c#代码来操作。客户端控件转服务器控件,就是在原来的标签上加上runat="server" .这样就可以通过C# 代码来访问了。当然要想访问到还需要设置ID属性来唯一标识这个控件。在控制div 隐藏时可以如这样。div 标签:...c#代码设置div隐藏 div1.Attributes.Add("style"...

C#在asp.net后台中如何为一个动态控件添加runat="server"属性_百度知...
从1可以看出,如果你想为任何一个控件添加runat=“server”,一定要在InitComplete()这个事件之前,添加这个属性。那么只有在Init()这个时间中,找到你想操作的控件,然后添加runat属性,但是这个时候,你根本找不到你想操作的控件,因为控件还没添加入控件树。

请问一个asp,net的问题?
根Web.config 文件从 Machine.config 文件那里继承一些基本配置设置,这两个文件位于同一个目录中。其中的某些设置不能在 Web.config 文件中被重写。有关更多信息,请参见 ASP.NET 配置文件层次结构和继承。运行时,ASP.NET 使用 Web.config 文件按层次结构为传入的每个 URL 请求计算唯一的配置设置集合。这些设置只...

asp.net C# remove()和clear()的区别
remove()是删除指定的节点 clear()是清空树 如果你要重新加载树,肯定是要用clear()如果你是要对节点做操作,用remove()

c# .net插入多张图片的后台代码怎样写?
3个方法 1。 多放几个(这个适合固定的)2。JS动态添加HTML控件的方式(适合动态增减)3. 用UPLOADflash 用FLASH一次选择多个文件(对用户体验最好)

C#中用ASP.net怎么来设计网页的页面
1、基于ASP.NET的应用程序设计,前台可以用VS工具直接做,就是往上拖控件,别嫌弃丑,你先把需要的按钮、放图片的位置、显示网页信息的位置等先拖控件上去,比如常用的Button、GridView、Image、Repeater等控件。这就是页面前台的布局,这种页面上就是广大用户能看到的、能操作的页面;比如百度首页的“百度...

.NET怎么修改和添加XML节点的内容?
1.检查所要操作的xml文件是否存在:System.IO.File.Exists(文件路径及名称);2.得到xml文件:(1)在asp.net中可以这样得到:XmlDocument xmlDoc = new XmlDocument();\/\/导入xml文档 xmlDoc.Load( Server.MapPath("xmlTesting.xml"));\/\/导入字符串 \/\/xmlDoc.LoadXml("<bookStore> <book id="01...

相似回答