2

私たちは、古い学校のクライアントサーバーアプリケーションを、すべてのMicrosoftテクノロジを使用して同期とオフラインサポートを備えたN層アプリケーションに変換しようとしています(私たちは.NetとSQLServerの合計ショップです)。プルームに時間を費やすのではなく、ビジネスロジックの記述に集中したいので、既存のMicrosoftプルームテクノロジをできるだけ多く使用します。

これまで、WinForm/WPFシッククライアントを備えたSQLServerCompactエディション、サーバー上のSQL Server 2008、Microsoft Sync Frameworkを使用して、クライアントSQLDBとサーバーSQLDB間の同期を行うことにしました。ここまでは順調ですね。

「N層」の部分を実装しようとすると問題が発生します。私たちの現在のアプリケーションはかなりSOAです。すべてのデータアクセス呼び出しは、Webサービスを介して行われます。そのため、当然、ADO.NetDataServiceの使用を考えていました。次に、ADO.Netデータサービスオフライン(Astoriaオフライン)と呼ばれるものがあることに嬉しい驚きを覚えました。これにより、Webサービスを介してデータアクセス呼び出しを行い、同期をサポートし、オフラインをサポートすることもできます。突然、私たちは天国が本当に地球上の場所であると信じ始めました。

そして昨日、「アストリアオフライン」の調査を担当しているチームメイトが、ブログ投稿( http://blogs.msdn.com/astoriateam/archive/2009/03/07/)に基づいて「アストリアオフラインは死んだ」と言っています。announcing-project-codename-astoria-offline-alpha-preview.aspx)。私たちは彼がひび割れているのではないかと疑ったが、彼に挑戦したくなかった。事実、アストリアオフラインはまだプレアルファモードであり、本番ソリューションが必要です。

Astroiaオフライン以外に、オフラインモードもサポートするN層設定でMicrosoft Sync Frameworkを使用できる同様のソリューションはありますか?

4

1 に答える 1

1

ADO.NET Data Services を検討している場合は、ADO.NET Synchronization Services が最適であることがわかるでしょう。作成しようとしているシナリオによって異なります。代わりに、リモート データ アクセスの方が適している場合があります。

同期サービスを選択することをお勧めします。 1.競合解決をサポートします。2.サーバーとクライアントの追跡を変更して、データの違いのみが交換されるようにします。3.同期フレームワークの次期 v2 でのピアツーピア同期。4.SQL Server 以外のデータベースと同期します。5. デスクトップまたはラップトップで実行する SSCE に最適です。

次の場合、RDA のパフォーマンスが向上する可能性があります。2.ユーザーはお互いのデータを上書きしないため、競合の解決は必要ありません。「最後に勝つ」というルールがあなたのために働きます。3. インデックスをプッシュ ダウンしたい場合、ローカルの SSCE データベースに参照整合性制約が適用されているかどうかは気にしません。4. SQL Server にアップロードする変更をトランザクションでラップして、すべての変更が適用されるか、またはどれも適用されないようにする場合。5.クライアントでの変更追跡は十分であり、更新されたサーバー テーブルの再ダウンロードにそれほど時間はかかりません。6.開発者の皆さんは、同期コードを書くことを気にしません。7.IIS を介して SQL Server に対して SQL およびストアド プロシージャを直接実行できます。8.読み取り専用データをダウンロードしています。

さらに何か必要な場合は、ただ叫んでください。

于 2010-02-17T17:57:03.750 に答える