c#设置xml内容不换行及属性xsi:nil=true的空节点添加
1.设置生成xml的内容格式为不换行
默认用下面代码创建并生成xml的代码如下:
这样的话会导致xsd中如果有验证会通不过,要想不换行,doc.Save(filename);可以改为:
2.添加属性为xsi:nil="true"的空节点
默认用下面代码创建并生成xml的代码如下:
代码如下:
XmlDocument doc = new XmlDocument(); //这里为创建节点等代码,省略.... //保存 doc.Save(filename); 结果生成的节点有换行: <UserName> </UserName>
这样的话会导致xsd中如果有验证会通不过,要想不换行,doc.Save(filename);可以改为:
代码如下:
using (XmlTextWriter xtw = new XmlTextWriter(filename, null)) { //None表示不应用特殊格式,另一个相反枚举值Indented表示缩进 xtw.Formatting = Formatting.None; doc.Save(xtw); }
2.添加属性为xsi:nil="true"的空节点
代码如下:
public static XmlElement CreateNodeWithNullAttr(XmlDocument doc, string nodeName) { XmlElement element = doc.CreateElement(nodeName); XmlAttribute attr = doc.CreateAttribute("xsi", "nil", "http://www.w3.org/2001/XMLSchema-instance"); attr.Value = "true"; element.SetAttributeNode(attr); //element.Attributes.Append(attr); return element; }
相关推荐
liqing 2020-04-18
wulaxiaohei 2020-02-20
lightlanguage 2020-02-18
sixthelement 2020-01-13
impress 2020-01-01
lionelf 2014-06-03
zxznsjdsj 2019-10-20
zhuyonge 2016-05-19
helloworlddm 2010-12-15
faiculty 2011-12-18
Stephenmu 2014-08-19
lionelf 2014-06-03
LetonLIU 2013-09-16
Godfavoredone 2019-06-28
黎俊杰的DBA生涯 2011-09-29
panpanhappy 2015-06-28
88251546 2015-03-28
sparkstrike 2014-04-24