关于使用XmlSerializer 序列化和反序列化的问题?

来源:百度知道 编辑:UC知道 时间:2024/07/02 15:45:50
aspx页面上有MagnetPullStrength,MagnetGrade,VisibleCustomerID三个textbox控件,现在需要将这三个框内的值以XML序列化存入到product表内ExtensionData这一列内(原话the data must be serialized into XML and stored only in the one column named ExtensionData.),并且读取的时候也要用反序列化来读取。

可是在msdn上看了还是不太明白要怎么弄
http://msdn.microsoft.com/zh-cn/library/system.xml.serialization.xmlserializer.aspx

要求的存入数据库的格式大概是这样
<ExtensionData>
<MagnetPullStrength>123
</MagnetPullStrength>
<MagnetGrade>23
<MagnetGrade>
<VisibleCustomerID>12,22,21,34,54,58639
</VisibleCustomerID>
</ExtensionData>

求助各位大大帮忙指点下 最好有代码例子 谢谢了
必须要用到XmlSerializer这个类

[XmlRootAttribute("Extensiondata", IsNullable = false)]
public class Extensiondata
{
public string MagnetPullStrength;
public string MagnetGrade;
public string VisibleCustomerID;
}

XmlSerializer serializer = new XmlSerializer(typeof(Extensiondata));
TextWriter writer = new StreamWriter(CommonLogic.SafeMapPath("images\\po.xml"));

Extensiondata po = new Extensiondata();

po.MagnetPullStrength = TextBox1.Text;
po.MagnetGrade = TextBox2.Text;
po.VisibleCustomerID = TextBox3.Text;

serializer.Serialize(writer, po);

writer.Close();

建一个类
[XmlRoot("ExtensionData")]
class ExtensionData{
[XmlElement("MagnetPullStrength")]
public int MagnetPullStrength{ get; set; }

[XmlElement("MagnetGrade&