如何指定自定义格式上的XmlWriter

问题描述:

执行序列化我的XML看起来像如何指定自定义格式上的XmlWriter

<Prisinfo> 
    <Enhet>kr</Enhet> 
    <Mengde>4.000000</Mengde> 
- <Delmengder> 
- <Delmengde> 
    <Mengde>2.000000</Mengde> 
    <Tekst>tekst</Tekst> 
    <Egenskaper /> 
    </Delmengde> 
    </Delmengder> 
    <Enhetspris>100.000000000000</Enhetspris> 
    <Sum>400.000000000000000000</Sum> 

我需要一种方法来控制小数格式化后。不幸的是,我还没有找到解决方案。

+0

什么XML序列化是您使用? – 2012-01-16 15:20:47

+0

对不起,我忘了指定 System.Xml.Serialization.XmlSerializer – qmicron 2012-01-16 15:37:36

可以延长带小数点场的字符串表示你的类格式,因为你需要与XmlIgnore属性标记小数领域,例如:

[XmlRoot] 
public class X 
{ 
    [XmlIgnore] 
    public decimal Dec { get; set; } 

    [XmlElement("Dec")] 
    public string DecString 
    { 
     get 
     { 
      return Dec.ToString("F2", CultureInfo.InvariantCulture); 
     } 
     set 
     { 
      Dec = decimal.Parse(value, CultureInfo.InvariantCulture); 
     } 
    } 
}