2009-04-21 24 views
5

Sono nuovo nello sviluppo di Windows Mobile e ho studiato i metodi per sincronizzare i dati tra il WM6 in esecuzione sul PDA e un database di SQL Server 2005. Dopo alcune ricerche ho deciso di andare con i servizi di sincronizzazione di Windows.Errore di sincronizzazione di Windows Mobile

ho iniziato, cercando in campione: SyncServicesForDevicesSample

Ho scaricato e installato tutto il software prerequisito delineata nel readme incluso:

  • Visual Studio 2008 Professional SP1
  • SQL Server Compact 3.5 Service Pack 1 (SP1)
  • Servizi di sincronizzazione per ADO.NET 1.0 (dispositivi)

Quando carico il campione ho notato che mancava il riferimento System.Data.SqlServerCe.dll nel progetto "GBADeviceClient", quindi l'ho collegato alla versione in C: \ Programmi \ Microsoft SQL Server Compact Edition \ v3 .5 \ Dispositivi che erano 3.5.5386.0.

Quando eseguo il progetto ricevo il seguente messaggio di errore:

file o il nome 'System.Data.SqlServerCe, Version = 3.5.1.0, Culture = neutral, PublicKeyToken = 3BE235DF1C8D2AD3' o una delle sue dipendenze, non è stata trovata .

Quando guardo sull'emulatore (Installazione applicazioni) Ho installato il seguente software:

  • Sync Services for ADO.NET 1.0
  • Microsoft .Net CF 3.5 EN-String R .. .
  • SQLServerCompact 3,5 Toos IT
  • SQLServerCompact 3,5 Repl
  • SQLServerCompact 3.5 Nucleo Microsoft
  • .NET CF 3.5

Quindi la versione del file errata viene chiamata sul PDA ... come faccio a fare riferimento alla versione "corretta"?

In alternativa, esiste un modo più semplice per sincronizzare un sottoinsieme di dati (circa 10 tabelle, in cui la maggior parte di esse sono solo elenchi di ricerca) da un database di SQL Server 2005?

Grazie in anticipo.

+0

La versione di assieme è 3.5.1.0 per la versione desktop di System.Data.SqlServerCe, ma non sono sicuro di come ciò influenzi la versione del Dispositivo? – ptutt

+0

Forse i servizi di sincronizzazione sono eccessivamente ingegnerizzati per i miei requisiti.Sono nuovo nello sviluppo mobile e sembra essere un obiettivo mobile per quanto riguarda le tecniche di sincronizzazione, il che mi rende riluttante a utilizzare Microsoft "l'ultima e la più grande", soprattutto perché mi ci sono voluti giorni per provare a far funzionare il campione. – ptutt

+0

Penso che la soluzione più semplice a questo punto sia utilizzare OpenNETCF Desktop Communication per copiare il file di database sul/dal dispositivo e scrivere un codice personalizzato per il processo di sincronizzazione. Questo processo può essere avviato manualmente dall'utente. – ptutt

risposta

1

Verificare di nuovo se è installato SQL Server Compact 3.5 SP1 per Windows Mobile (download here). La mia dll ha la versione 3.5.5692.0

Dopo aver installato SP1, è meglio disinstallare la versione precedente dall'emulatore e distribuire nuovamente l'applicazione per installare la versione più recente.

Problemi correlati