저는 앞으로 나가야 할 (RavenDB 같은 것을 배우기위한 작은 프로젝트 인) 문서를 많이 바꿀 때 응용 프로그램을 개발 중입니다. 일부 변경 사항은 역 호환되지 않으므로 문서를 가져 오려고하면 JSON 직렬화 오류가 발생합니다.RavenDB : 문서 속성을 다른 유형으로 변환
deserialization 중에 이전 유형의 속성을 새 형식으로 변환하는 방법이 있습니까? 클라이언트 라이브러리로 Raven.Client.Lightweight
을 사용하고 있습니다.
예 :
나는 Dictionary<string,string>
이었다 클래스에서 AllProperties
이라는 속성을 가지고 있었다. 사전에서 유형을 MetadataItemCollection
클래스로 변경했습니다.
실제로 시도하는 것이 올바른 방법일까요? 즉, 모듈이 확장을 위해 열리지 만 수정을 위해 닫히는 "열림 닫기 원리"SOLID의 두 번째 규칙을 따르지 않아야합니까? 속성 이름을 변경하는 경우 문서를 삭제하고 처음부터 다시 작성해야합니다. 그런 다음 코어 구조가 안정적으로 구현되면 확장을 허용하는 인터페이스가 필요합니까 ?? 생각? – Jethro
@Jehtro : 진심이야? – jgauffin