2010-11-26 17 views
0

私は、配信ドライバで使用するCompact Frameworkアプリケーションを構築しました。システムには、サーバー上のWCFサービスとSQLデータベース、およびモバイルデバイス上で実行されているSQL CEデータベースとCFアプリケーションが含まれています。CFアプリケーション、dbとサーバーコードを更新する最も良い方法

ここで、新しいバージョンをリリースすると、これを簡単にすべて更新する方法がありますか?問題は次のとおりである:

  • 最初のSQL CEデータベースを移入する必要がありPDAにインストールした場合、それはPDAの
  • の数百に展開することができます。これにはしばらく時間がかかります。私はアプリがアップグレードされるたびにこれを行う必要はないので、ファイル全体を置き換えて再作成するのではなく、dbスキーマを更新するスクリプトを実行する必要があります。
  • WCFサービスコードが
  • 更新する必要がありますSQLデータベーススキーマは、私はこのすべてのソリューションを見ることができます

を更新する必要がありますが、それは多くの作業のように思えます。私はそれをすべて開始する前にいくつかのヒントを得ることが役に立つかもしれないと思った。

どうもありがとう
マーク

答えて

1

私は多かれ少なかれ同じrequierementsでいくつかのプロジェクトを行ってきました。

私がアプリケーション内で、アップデータを使用することをお勧めしますPDAの

の数百に展開することができます。 Webサービスを介して新しいバージョンの可用性をチェックします。アップデートがあればダウンロードしてください。次に、別のプロセスを実行して更新を実行します(このプロセスはwceload.exeを実行してからデバイスを再起動するためにのみ使用します)。

PDAに最初にインストールされたときに、SQL CEデータベースにデータが取り込まれる必要があります。これにはしばらく時間がかかります。私はアプリがアップグレードされるたびにこれを行う必要はないので、ファイル全体を置き換えて再作成するのではなく、dbスキーマを更新するスクリプトを実行する必要があります。

データベースをアプリケーションのファイルとして含めないでください。スクリプトを作成し、dbを作成しない場合はdbが存在するかどうかを確認してください。

WCFサービスコードは、私は契約文句を言わないの変更は独立して更新Webサービスを持っている

を更新する必要があります。現在のバージョン、認証を受け取り、更新が利用可能で、ファイルがダウンロードされるURLがあれば返します。

更新するには2つの異なるアドレスが必要です。新しいバージョンではリダイレクトを実行してください。

SQLデータベーススキーマは、私はあなたが私が情報を検索するためにビューを使用することをお勧めしますので、あなたは、サーバーのバックエンドを参照することを意味するものを願ってい

を更新する必要があります。

もしあなたがSQLCE dbを意味するのであれば、パッチスクリプトを配布したり、データベースをプレーンに消去したり、dbを再作成することができます。