你的位置:首页 > ASP.net教程

[ASP.net教程]C# 生成XML空元素/空节点自动换行解决方案


使用DataSet可以直接输出

ds.Write

不过,这样将不会输出值为Null的字段,如:

你可能希望结果是这样: 

<a>1</a> <b>2</b> <c></c> 

但结果为:

<a>1</a> <b>2</b> 

c没有输出在

//初始化一个new = "", ""); //创建"Rows"); //将根节点加入到foreach (DataRow dr in ds.Tables[0].Rows) {   = "Row");   rootElement.AppendChild(foreach (DataColumn col in ds.Tables[0].Columns)   {     = = dr[col].ToString();     

空节点显示出来了,但是,另一个问题出现了,空节点换行了,成了这样:

<a>1</a> <b>2</b> <c> </c>

虽然这样也符合

using (new null)) {   xtw.Formatting = Formatting.None;   

但是这样一来,

if (dr[col].ToString() != null && dr[col].ToString() != "") {   = dr[col].ToString(); } 

输出:

<a>1</a> <b>2</b> <c/>