【发布时间】:2011-12-02 07:22:01
【问题描述】:
我有一个自定义类型 UserSettingConfig 我想保存在我的数据库中,我想将它保存为纯 XML,因为以后可能会更改类型,并且迁移纯 xml 比二进制对象更容易。
public class Serialize
{
private readonly DataContractSerializer _serializer;
public Serialize()
{
_serializer = new DataContractSerializer(typeof(UserSettingConfig));
}
public string SerializeObject(UserSettingConfig userSettingConfig)
{
using (var memoryStream = new MemoryStream())
{
_serializer.WriteObject(memoryStream, userSettingConfig);
string userSettingXml = memoryStream.ToString();
memoryStream.Close();
return userSettingXml;
}
}
public UserSettingConfig DeSerializeObject(string userSettingXml)
{
UserSettingConfig userSettingConfig;
using (var stream = new MemoryStream(userSettingXml))
{
stream.Position = 0;
userSettingConfig = (UserSettingConfig)_serializer.ReadObject(stream);
}
return userSettingConfig;
}
}
这不起作用,因为内存流需要字节数组或 int
我希望我的序列化返回一个字符串(我可以在我的数据库中保存为 varchar(MAX))
【问题讨论】: