2015-01-12 28 views
2

我試圖序列化一個MVC對象到XML字符串更換XSI:無=「真」與XML序列化C#的空標籤

我使用這個函數解析對象

public string ToXML(object oObject) 
    { 
     XmlDocument xmlDoc = new XmlDocument(); 
     XmlSerializer xmlSerializer = new XmlSerializer(oObject.GetType()); 
     using (MemoryStream xmlStream = new MemoryStream()) 
     { 
      xmlSerializer.Serialize(xmlStream, oObject); 
      xmlStream.Position = 0; 
      xmlDoc.Load(xmlStream); 
      return xmlDoc.InnerXml; 
     } 
    } 

不幸的是我希望我的XML架構是這樣爲空的值,例如

,而不是<fProjectGID xsi:nil="true" />

<fProjectGID><fProjectGID/> 

如何添加第二個標籤並從我生成的xml中爲每個可爲空的值移除這個愚蠢的xsi:nill =「true」屬性?

回答

0
XmlDocument doc = new XmlDocument(); 
doc.Load(file);       
XmlNode node = doc["Root"]["fProjectGID"]; \\ Go to your desired Node 
node.RemoveAll(); \\It Will remove the xsi:nil="true" 
node.InnerText = " Put Here your desired text"; \\ Any Inner Text You want.