El uso de .NET 4/C# ...Deserialize para escribir cuyo espacio de nombres ha cambiado
necesito para deserializar los archivos de configuración antiguos que contienen la representación serializada de un tipo con nombre, por ejemplo, ns1.X. La serialización se ha realizado usando BinaryFormatter
.
El problema es que, después de una ronda de refactorización, el tipo X se ha movido a un espacio de nombres diferente, digamos ns2.X.
He intentado crear un nuevo tipo ns1.X vacío que se deriva de NS2.x, y si bien esto evita la 'No encontraste tipo ns1.X' de error, las propiedades del objeto deserializado son todos null
. Además, no se llama a los ctors en el proceso.
¿Alguna sugerencia?
No estoy seguro de si esto puede resolver su problema ya que nunca lo he usado, pero recuerdo haber leído algo sobre TypeForwarding hace un tiempo: puede encontrar la información aquí: http: // msdn .microsoft.com/es-es/library/ms404275.aspx – Anton
Interesante. Lo comprobaré. –
Una búsqueda en Google encontró esto que podría ayudar: http://www.codeproject.com/KB/cs/DrawWithMouse.aspx#AdvancedBinarySerialization:DeserializinganObjectIntoaDifferentTypeThantheOneItwasSerializedInto9 – Dan