1
我在設計序列化對象時遇到了困難。如何在這種情況下在Xml中序列化多個對象?
讓我給你看看我的場景。我有一個普通Configuration
類包含三個屬性:
public sealed class Configuration
{
public Configuration(string name, Levels level, ConfigurationSpec spec)
{
this.Name = name;
this.Level = level;
this.Spec = spec;
}
public string Name { get; set; }
public Levels Level { get; set; }
public ConfigurationSpec Spec { get; set; }
}
最後一個屬性是項重要的,因爲它是一個抽象類,它可以從其他類派生:
public class ConfigurationSpec { }
public class BinaryConfiguration : ConfigurationSpec
{
public Range<int> Range1 { get; set; }
public Range<int> Range2 { get; set; }
public BinaryConfiguration()
{
this.Range1 = new Range<int>();
this.Range2 = new Range<int>();
}
public BinaryConfiguration(Range<int> range1, Range<int> range2)
{
this.Range1 = range1;
this.Range2 = range2;
}
}
public class Range<T> where T : IComparable<T>
{
private T _min;
private T _max;
public Range()
{
}
public Range(T min, T max)
{
this.Min = min;
this.Max = max;
}
public T Min
{
get { return _min; }
set { _min = value; }
}
public T Max
{
get { return _max; }
set { _max = value; }
}
所有這一切都包含ConfigurationSpec
類。而真正的問題是,我要添加很多來自ConfigurationSpec
的Specs
,我的意思是數百個。
<Configuration>
<!-- Maybe here it'll be good specify the type -->
<ConfigurationSpec>
<Range1 X="2" Y="4" />
<Range2 X="5" Y="10" />
</ConfigurationSpec>
</Configuration>
而且我想知道我怎麼能寫,並從該序列化XMLFILE閱讀所有這些類。
如果您有任何疑問,請讓我知道
如果可以用樣本說明我嗎? – 2012-04-02 17:48:02
另一個疑問,正如你可以在我的情況看到的,最好是從Linq – 2012-04-02 17:57:32
序列化XmlSerialization或XDocument,你可以使用XmlSerialization, – 2012-04-02 18:10:54