2014-04-15 1 views
0

두 개의 테이블 작업과 사람이 있다고 가정 해 보겠습니다.Jaydata는 테이블을 떨어 뜨리고 다시 빌드 한 후에도 여전히 존재합니다.

//Create related data 
todoDB.Todos.add({ 
    Task: "Your task", 
    Person: new Person({Name: 'Peter'}); 
}); 
todoDB.saveChanges(); 

모든 클라이언트 및 서버 데이터를 동기화 된 상태로 유지하는 방법을 구현하려고합니다.

내가 사람의 스키마를 변경하고 해당 테이블을 다시 작성해야한다고 가정 해 봅시다. - 나는 사람을 드롭하고 새 스키마로 다시 작성합니다. 이름 = Peter 인 사람을 포함한 데이터로 다시 채 웁니다. "당신의 임무"의 인물 속성은 여전히 ​​같은 사람에게 연결될 것인가, 아니면 그 속성을 재구성해야 할 것인가? 나는 id 속성을 실제로 사용하고 name은 사용하지 않을 계획이며, Id는 키 값이 될 것입니다.

답변

0

동기화가 단방향으로 만 발생하는 경우 서버의 ID를 사용할 수 있지만 클라이언트에서 엔터티를 만들고 서버에 다시 동기화하려는 경우 GUID 참조 유형은 이동 방법입니다 충돌없이 클라이언트와 서버에서 동일한 식별자를가집니다.

+0

내 동기화는 두 가지 방법입니다. 나는 이미 guids를 사용합니다. 내 질문은 내가 파괴하고 테이블을 다시 작성하는 경우 ....이 개체 (참조 무결성)에 연결하는 다른 테이블의 속성이 여전히 재건 후에 유효 할 것인가? –

+0

예! 귀하의 서버는 참조 무결성을 유지할 것입니다. 특정 질문이있는 경우 원래 서버 및 클라이언트 스키마로 질문을 수정하고 수정할 수 있습니다. – Robesz

관련 문제