0
我正在創建一個對象,它將被序列化並根據XSD進行驗證以創建一個XML文件。我遇到的問題是在XML某些節點是重複的,但有不同的名稱,到目前爲止,我有以下幾點:對象自動屬性的複製
public class export
{
public info info { get; set; }
public design design { get; set; }
}
public class info
{
public DateTime exportDateTime { get; set; }
public string duration { get; set; }
public planningSoftware planningSoftware { get; set; }
public exporter exporter { get; set; }
}
public class planningSoftware
{
public string name { get; set; }
public string major { get; set; }
public string minor { get; set; }
public string revision { get; set; }
public string build { get; set; }
}
public class exporter
{
public version version { get; set; }
public module module { get; set; }
}
public class version
{
public string name { get; set; }
public string major { get; set; }
public string minor { get; set; }
public string revision { get; set; }
public string build { get; set; }
}
public class module
{
public string name { get; set; }
public string major { get; set; }
public string minor { get; set; }
public string revision { get; set; }
public string build { get; set; }
}
public static void buildXML()
{
var export = new export()
{
info = new info()
{
exportDateTime = DateTime.Today,
duration = 10,
planningSoftware = new planningSoftware()
{
name = "Planning App",
major = "10",
minor = "4",
revision = "6",
build = "225"
},
exporter = new exporter()
{
version = new version()
{
name = "App Test",
major = "10",
minor = "1",
revision = "0",
build = "201"
},
module = new module()
{
name = "App Test Module",
major = "5",
minor = "2",
revision = "1",
build = "220"
}
}
}
};
var s = new XmlSerializer(typeof(export));
using (var f = File.Open("export.xml", FileMode.Create))
{
s.Serialize(f, export);
}
}
我的問題是,我怎麼能在這裏最小化領域的重複?我通常可能會初始化一個保存值的獨立對象,但看起來這會影響序列化。
感謝。
我不這麼認爲,我試圖在這裏連載並且有一個複製名稱,主要,次要的對象。修訂和構建屬性,我需要儘量減少重複而不影響序列化。 –
planningSoftware和版本具有相同的屬性,因此您可以爲這兩個類創建一個通用基類,然後繼承基類。 – jdweng