2016-06-27 3 views
0

나는 부모 엔티티를 API에서 다운로드하여 데이터베이스에 저장하는 시나리오가 있습니다. 나는 부모가 모두 구원 받으면 자녀를 다운로드하고 구하기를 원합니다.부작용에 대한 혼란/ContinueAfter

상위 저장 조작의 결과를 하위 저장 조작에 전달하지 않으므로 이것이 부작용에 대한 일부 의견을 보았거나 오해했습니다. 나는 부모님이 구원받을 때 그것을 시작하기 만하면됩니다.

누군가 나에게이 작업을 수행하는 가장 좋은 방법을 설명해 줄 수 있습니까?

답변

1

아마도 이런 식으로 뭔가를 시도 :이 효과적으로 잘 지내을 저장하지만, 당신이 구독 할 수있는 하나의 관찰을 출력, 모든 개체의 너비 우선 탐색을하고있다

Observable 
    .Create<int>(o => 
    { 
     var parentIds = new int?[] { null }; 
     return 
      Observable 
       .While(
        () => parentIds.Any(), 
        parentIds 
         .ToObservable() 
         .Select(parentId => Save(parentId))) 
         .Finally(() => { /* update `parentIds` here with next level */ }) 
       .Subscribe(o); 
    }) 
    .Subscribe(x => { }); 

.

+0

올바른 추적을 해 주셔서 감사합니다. –

관련 문제