2009-04-21 13 views
5

私はWindows Mobile開発を初めて使い、PDAの実行中のWM6とSQL Server 2005データベース間でデータを同期する方法を調査しています。いくつかの調査の後、私はWindows Synchronization Servicesに行くことにしました。Windowsモバイル同期エラー

私はサンプルを見て、開始しました:SyncServicesForDevicesSample

私はREADMEに記載されているすべての前提条件ソフトウェアをダウンロードしてインストールを含む:

  • のVisual Studio 2008 ProfessionalのSP1
  • SQL Server Compact 3.5のサービスにパック1(SP1)
  • ADO.NET 1.0(デバイス)の同期サービス

私は「GBADeviceClient」プロジェクトにSystem.Data.SqlServerCe.dll参照が欠落していたことに注目サンプルをロードするので、私はCでバージョンにリンク:の\ Program Files \ Microsoft SQL ServerのCompact Editionの\ v3の.5 \ 3.5.5386.0だったデバイス。

私は次のエラーメッセージを取得プロジェクトを実行します。

ファイルまたはアセンブリ 'System.Data.SqlServerCeを、 バージョン= 3.5.1.0、文化=中立、 なPublicKeyToken = 3BE235DF1C8D2AD3' の名前を、または のいずれかの依存関係は、 が見つかりませんでした。私はエミュレータ上で見てみると

私は次のソフトウェアがインストールされている(プログラムの削除):

  • シンクサービスを
  • のMicrosoft .NET CF 3.5 EN-文字列R ADO.NET 1.0のために.. 。
  • SQLServerCompact 3.5 TOOS EN
  • SQLServerCompact 3.5 REPL
  • SQLServerCompact 3.5コアマイクロソフト
  • .NET CF 3.5

したがって、間違ったファイルバージョンがPDAで呼び出されています...「正しい」バージョンをどのように参照しますか?

また、SQL Server 2005のデータベースからデータのサブセット(それらのほとんどは唯一のルックアップリストである約10のテーブルを、)を同期する簡単な方法はありますか?

ありがとうございます。再び

+0

System.Data.SqlServerCeのデスクトップバージョンのアセンブリバージョンは3.5.1.0ですが、デバイスバージョンにどのように影響するのかわかりませんか? – ptutt

+0

私の要件に合わせて、同期サービスが過剰に設計されていることがあります。私はモバイル開発の初心者です。同期技術に関する限り、マイクロソフトの「最新かつ最高の」技術を使用することを躊躇しています。 – ptutt

+0

私はこの時点で最も簡単な解決策は、OpenNETCF Desktop Communicationを使ってデバイスとの間でデータベースファイルをコピーし、sync'ingプロセス用のカスタムコードを書くことだと思います。このプロセスは、ユーザーが手動で開始できます。 – ptutt

答えて

1

チェックがインストールのWindows Mobile(download here)のためのSQL Server Compact 3.5のSP1を持っている場合。私のDLLがSP1をインストールした後、バージョン3.5.5692.0

を持って、あなたはより良いエミュレータから以前のバージョンをアンインストールし、最新バージョンをインストールするために、再度アプリケーションを配備します。