输出带有属性的xml

时间:2009-05-28 22:18:05

标签: .net xml xmlwriter

如何获得此输出?

<MSRP currency="USD">10.00</MSRP>

writer.WriteElementString(“MSRP”,Convert.ToString(q.ItemPrice1));

writer.WriteAttributeString(“currency”,“MSRP”,“USD”);

这是错误:

状态内容中的Token StartAttribute会导致XML文档无效。

2 个答案:

答案 0 :(得分:5)

writer.WriteStartElement( "MSRP" );
writer.WriteAttributeString( "currency", "USD" );
writer.WriteString( q.ItemPrice1.ToString() );
writer.WriteEndElement();

当你调用WriteElementString时,它会一次性写入整个元素 - 以后没有机会添加属性。您必须使用WriteStartElement打开元素...然后使用WriteEndElement将其关闭。

答案 1 :(得分:2)

我相信这会解决问题。

writer.WriteStartElement("MSRP");
writer.WriteAttributeString("currency", "USD");
writer.WriteValue("10.00");
writer.WriteEndElement();

请参阅documentation at msdn