2016-10-14 3 views
0

RIA 서비스에 대한 호출을 보관할 서비스 클래스가 있습니다. 여러 레코드를 저장하는 다음과 같은 방법이 있습니다. 첫 번째 단계에서는 테이블에서 유명한 MaxId를 가져 와서 foreach에서 개체를 추가하기 위해 증가시켜야합니다.여러 레코드 삽입 RIA 서비스

public bool SaveRecs(ObservableCollection<Acc> accList) 
    { 
     int i = 0; 
     invokeOperation = Context.GetMaxAcc(); 
     invokeOperation.Completed += 
     (s, a) => 
     { 
      foreach (Acc item in accList) 
      { 
       //if (CheckAcc(item.name, item.id)) continue; 
       item.id = invokeOperation.Value + i; 
       Context.Accs.Add(item); 
       i++; 
      } 
     }; 
     return Commit(); 
    } 

문제는 이상이 중복의 오류를 줄 수 있다는 것이다, 메소드가 처음 호출 될 때, 그것은 아무것도 작동 두 번째 시간을 없다는 것입니다. 나는 ID가

이 그 일을의 올바른 방법인가 ZERO했다 코드를 디버깅 할 때?

감사

답변

0

내 실수, 나는이 foreach는 후 커밋 이동해야합니다.