2013-07-24 2 views
1

원격 데이터베이스를 사용하는 Windows Phone 8 응용 프로그램을 구축 중입니다. 이 데이터베이스에 액세스하기 위해 (IIS에서 실행되는) Odata Dataservice를 만들었습니다.업데이트 및 Odata 서비스 및 linq를 사용하여 데이터베이스에 삽입

이 데이터 서비스를 사용하여 데이터베이스에서 데이터를 검색하는 데는 모두 준비가되었습니다. 하지만이 서비스를 사용하여 데이터베이스에 데이터를 업데이트하고 삽입하려고합니다. linq을 사용하여 어떻게 할 수 있습니까?

참고 : 이미

this을 읽고하지만 난 그 링크를 내가 allready 무슨 작업을 위선적 인 말투 :

 private void Mainpage_loaded(object sender, RoutedEventArgs e) 
    { 

     var ctx = new MeasurmentEntities(new Uri("http://192.168.11.240:85/NFCDataService.svc/")); 
     var coll = new DataServiceCollection<Device>(ctx); 

     Lst.ItemsSource = coll; 

     coll.LoadCompleted += new EventHandler<LoadCompletedEventArgs>(coll_LoadCompleted); 

     var query = from g in ctx.Devices 
        where g.DeviceId > 2 
        orderby g.DeviceName 
        select g; 


     coll.LoadAsync(query); 

    } 

    void coll_LoadCompleted(object sender, LoadCompletedEventArgs e) 
    { 

     if (e.Error != null) 
     { 
      MessageBox.Show(e.Error.ToString()); 
     } 

    } 

답변

1

같은 뭔가 (즉 레코드를 삽입) 엔티티를 추가하려면 다음을 :

ctx.AddToDevices(new Device{...}); 
ctx.BeginSaveChanges(new AsynCallback(r=>{ 
    DataServiceResponse dsr = ctx.EndSaveChanges(r); 
    if (dsr.Any(op => op.Error != null)) 
    { 
     //Show error message 
    } 
    else 
    { 
     //Succeeded 
    } 
},null);