2
이전 버전을 사용하여 직렬화 된 파일을 비 직렬화하려고합니다. 새 버전에서 .net 바이너리 포맷터는 정의가 많이 변경된 객체를 비 직렬화합니다.
, 우리는 새로운 간 부모 클래스를 추가 공개- 변화 네임 스페이스
- 변경 클래스 멤버 액세스 수준을 했어요. Class A는 Base에서 파생되었습니다. 이제 Class A는 B에서 파생되고 B는 Base에서 파생됩니다. B에는 새로운 멤버가 없습니다.
- 기본 클래스는 새 멤버를 추가합니다.
나는 SerializationBinder를 사용하여 문제 1을 해결할 수 있음을 알고 있습니다. 새로 추가 된 클래스 멤버의 경우 [비 직렬화]로 표시했습니다. 하지만 여전히 deserialization 오류가 발생합니다.
모든 포인터?
http://msdn.microsoft.com/en-us/magazine/cc188950.aspx를주의 깊게 읽은 후에이 일을 너무 많이하기위한 노력을 알고 있습니다. 이전 클래스를 다시 가져오고 전체 serializer를 다른 클래스로 마이그레이션하여 바이너리 포맷터를 제거하기로 결정했습니다. – ianXian