使用XmlTextWriter生成XML时结束标签携带属性如何解决
XmlTextWriter生成XML格式异常解决方案
你出现该问题的核心原因是错误将元素属性和元素名称拼接后,作为WriteElementString、WriteStartElement方法的第一个参数传入。这两个方法的首个参数仅接收纯元素名称,属性需要通过单独的WriteAttributeString方法写入,即可避免闭合标签携带属性的问题。
生成kennung标签的代码修改
替换原有单行WriteElementString代码为如下逻辑:
xmlTextWriter.WriteStartElement("kennung"); xmlTextWriter.WriteAttributeString("klasse", "MELDID"); xmlTextWriter.WriteString(txtMeldID.Text); xmlTextWriter.WriteEndElement();
XMLWriteRowHelpProperty方法修改
修改后的方法代码如下:
private void XMLWriteRowHelpProperty(XmlWriter xmlTextWriter, string fieldName, string fieldValue) { xmlTextWriter.WriteStartElement("hmm"); xmlTextWriter.WriteAttributeString("name", fieldName); xmlTextWriter.WriteElementString("wert", fieldValue); xmlTextWriter.WriteEndElement(); }
内容的提问来源于stack exchange,提问作者EricBeB
相关产品推荐
相关产品推荐

