改變了我有這個類戰略反序列化類,在.NET
[Serializable]
public class myClass() : ISerializable
{
public int a;
public int b;
public int c;
public void GetObjectData(SerializationInfo info,
StreamingContext context)
{
// Some code
}
public myClass(SerializationInfo info,
StreamingContext context)
{
// Some code
}
}
我有數百個這樣的對象在我的數據庫。我現在已經準備好發佈我的應用程序的新版本,其中類已經演變到
[Serializable]
public class myClass() : ISerializable
{
public int a;
public string b;
public int c;
public bool d;
public void GetObjectData(SerializationInfo info,
StreamingContext context)
{
// Some code
}
public myClass(SerializationInfo info,
StreamingContext context)
{
// Some code
}
}
如何將一個反序列化基於第一版本與第二的反序列化構造函數序列化的對象。
是否還有未來的版本打樣我的第二個版本的類的策略?
做一個轉換程序,讀取第一種類型的對象產生第二種類型的對象,並用新的替換舊的對象。如果你正在談論數百個,而不是數百萬條記錄,那麼運行該程序應該花費很長時間。 – dasblinkenlight 2012-04-19 22:45:14
有一個關於它的專門的MSDN文章。最好從這裏開始:http://msdn.microsoft.com/en-US/library/ms229752%28v=vs.90%29.aspx – 2012-04-19 23:32:57