我有一個自定義類型UserSettingConfig我想保存在我的數據庫中,我想將它保存爲純XML,因爲類型可能稍後會更改,遷移純XML比一個二進制對象。將datacontract序列化對象保存爲字符串以保存在sql db中
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))
不知道該怎麼做 – Mech0z
好的。擴展了一下:] –