オンラインとオフラインの両方で動作する Web アプリケーション (SaaS) を構築したいと考えています。ユーザーは、オフラインの場合に備えて機能を制限し、オンラインに戻ったときにすべての機能にアクセスする必要があります。次のオプションを考えました。
ユーザーに Cassini などのローカル サーバーをダウンロードさせ、Web アプリケーションでオンライン モードとオフライン モードを許可するアーキテクチャを考案します。どのように実行されるかはわかりませんが、すべてのコマンドがこのローカル サーバーを経由してルーティングされると思います。次に、ローカル サーバーは、ローカル リソースにアクセスするかサーバーにアクセスするかを決定します。 ユーザーに自分のシステムにアプリケーションをインストールさせると、SaaS の背後にあるアイデア全体が無効になります。
Google Gears を使用する - Google ドキュメントがオフライン モードでどのように機能するかを確認しました。ユーザーのシステムに Google Gears をインストールします。これは非常にきちんとしていて高速で、すべてのファイルをローカルにコピーします。オフライン バージョンにアクセスするためのリンクが提供されます。これは、ローカル サーバー、リレーショナル データストア、およびワーカー プール自体を統合するため、私には良い選択肢のように思えますが、Google Gears は本番環境で使用できるほど成熟していますか?
そのようなアプリケーションに取り組んでいる/取り組んでいる人はいますか。アイデア歓迎。
編集 @1: 私は Silverlight と、そのようなシナリオで使用できるかどうかについてあまり詳しくありません。
編集 @2: 次のリンクは、SilverLight を使用してオフライン アプリケーションを開発できることを示して います。ユーザーはオフラインで作業できますか? ユーザーはブラウザ ウィンドウを閉じた後、同じ Web ページを再度開くことができますか?