この出力はどのようにして取得できますか?属性付き出力XML
<MSRP currency="USD">10.00</MSRP>
writer.WriteElementString( "MSRP"、Convert.ToString(q.ItemPrice1))。
writer.WriteAttributeString( "currency"、 "MSRP"、 "USD");
トークンStartAttribute状態でコンテンツが無効なXML文書につながる:
この
はエラーです。この出力はどのようにして取得できますか?属性付き出力XML
<MSRP currency="USD">10.00</MSRP>
writer.WriteElementString( "MSRP"、Convert.ToString(q.ItemPrice1))。
writer.WriteAttributeString( "currency"、 "MSRP"、 "USD");
トークンStartAttribute状態でコンテンツが無効なXML文書につながる:
この
はエラーです。writer.WriteStartElement("MSRP");
writer.WriteAttributeString("currency", "USD");
writer.WriteString(q.ItemPrice1.ToString());
writer.WriteEndElement();
WriteElementStringを呼び出すと、すべての要素が一度に書き込まれます。後で属性を追加することはできません。 WriteStartElementで要素を開いてから、WriteEndElementで要素を閉じる必要があります。
私はこれがトリックを行うと信じています。
writer.WriteStartElement("MSRP");
writer.WriteAttributeString("currency", "USD");
writer.WriteValue("10.00");
writer.WriteEndElement();
私は多分あなたは小数点以下の桁数を制御したい場合を除き数(ののXml準拠した文字列表現にItemPrice1を変換するXmlConvertクラスを使用してになりますdocumentation at msdn
何が良い、writevalueまたはwritestringですか? –
実際、私はそれが問題ではないと思っています。コンパイラがあなたが文字列を書いていることを知っている限り。 WriteValueはより柔軟で、DOMElement.NodeValueに近い音を出します。 – Kris
を参照してください。「10.00」わずか10に変換されます)。 –
q.ItemPrice1.ToString();動作しません... Convert.ToString(q.ItemPrice1);を使用する必要があります。 –
ItemPrice1プロパティの型は何ですか? Convert.ToStringメソッドはほとんどの型のToStringを呼び出します。 –