输出带有属性的xml

Sco*_*mer 1 .net xml xmlwriter

我如何获得此输出?

<MSRP currency="USD">10.00</MSRP>
Run Code Online (Sandbox Code Playgroud)

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

writer.WriteAttributeString("currency","MSRP","USD");

这是错误:

状态Content中的Token StartAttribute将导致XML文档无效.

Pau*_*der 5

writer.WriteStartElement( "MSRP" );
writer.WriteAttributeString( "currency", "USD" );
writer.WriteString( q.ItemPrice1.ToString() );
writer.WriteEndElement();
Run Code Online (Sandbox Code Playgroud)

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