2013-01-13 2 views
0

MongoDB를 처음 사용하고 효율적으로 객체를 직렬화하고자합니다. 즉, 개체를 업데이트 할 때 변경된 필드 만 쓰고 싶다는 뜻입니다. 내 개체가 목록에 하위 개체가있는 경우, 나는 변경된 하위 개체 만 추가하거나 제거하고자합니다. 그 이유는 내가 1000 개의 덧글이있는 게시물을 가지고 있기 때문에 새로운 게시물이 올 때마다 전체 개체를 직렬화하지 않기를 원하기 때문입니다.변경된 멤버 만의 직렬화

내가 아는 것이 모두 ignoreifempty, ignoreisdefault 및 shouldserializexyz 패턴입니다.

ignoreifnotchanged (내 개체의 더티 필드를 추적)와 같은 규칙을 작성하거나 모든 속성에 대해 메서드를 작성하고 싶지 않으므로보다 일반적인 shouldserializexyz가 있습니다.

답변

0

살펴볼 내용은 업데이트 할 필드를 지정하는 업데이트 인수가있는 Update 메서드입니다.

갱신 빌더를 사용하여 갱신 인수 값을 빌드 할 수 있습니다. 들여다보기 :

Update.Set(name, value) 
Update.Push(name, value) 

(그 이상도 있음)

한 번에 둘 이상의 필드를 업데이트하기 위해 업데이트 방법을 함께 연결할 수 있습니다.

현재 변경 내용 추적 기능이 내장되어 있지 않으므로 변경된 필드를 추적하고 변경된 내용에 대한 지식을 기반으로 업데이트 인수를 작성해야합니다.

이와 관련된 보류중인 JIRA 기능 요청도 있습니다. 참조 :

https://jira.mongodb.org/browse/CSHARP-237

댓글 또는 당신이 원하는 경우 JIRA에 투표하세요.