5.格式化文本内容
public string Name
{
get { return name; }
set { name = value; }
}
则Name会生成在<Pupil>XXX(Name)</Pupil>中作为文本
6.为元素/属性定义数据类型
XML Schema类型与.NET数据类型有一个Mapping,比如说type对应System.DateTime
public DateTime EnrollDate
{
get { return enrollDate; }
set { enrollDate = value; }
}
于是生成XML: <EnrollDate>2007-10-19</EnrollDate>
XMLRoot,XmlAttribute,XMLElement,XMLText,XMLArrayItem标签都可以指定DataType
7.为枚举修饰符指定其他名称
{
[XmlEnum(Name = " White Color " )]
White,
[XmlEnum(Name = " Black Color " )]
Black,
[XmlEnum(Name = " Red Color " )]
Red
}
private Color showColor;
public Color ShowColor
{
get { return showColor; }
set { showColor = value; }
}
生成XML如下格式:
<ShowColor>White Color</ShowColor>
8.串行化多肽数组
XmlArrayItem(Type = typeof (String), ElementName = " CourceName " ),
XmlArrayItem(Type = typeof (Int32), ElementName = " CourceCode " )]
public Object[] Subjects
{
get { return subjects; }
set { subjects = value; }
}
XmlArrayItem负责指定数组中可能出现的元素类型,以及该类型对应的XML前缀
比如说创建如下的数组:
Object obj = new Object["Physics", 123, "IT"];
生成XML如下格式:
< CourceName > Physics </ CourceName >
< CourceCode > 123 </ CourceCode >
< CourceName > IT </ CourceName >
</ Cources >
9.定义可空的对象引用
如果某属性为null,在串行化时会忽略该属性,可以显示替代的信息,方法如下:
public string Address
{
get { return address; }
set { address = value; }
}
在该位置,生成替代XML:
<Address xsi:nil="true" />
10.定义可忽略的字段/属性
[XmlIgnore()]