3

現在、SQLServerバックエンドを備えたWinformアプリがあります。DALはLinqtoSQLで構成されています。このアプリの複雑さの1つは、オフラインで機能する必要があることです。

これは、マージレプリケーションを使用して、ローカルSQLExpressインスタンスを中央のSQLServerと同期させることで実現しました。contextsそこで接続状態を検出し、接続文字列を適切に切り替えるロジックがいくつかあります。

したがって、私の質問は、これはSilverlight 4でも機能するのでしょうか?理論的には、それらがオフラインになったことを検出し、接続を適切に切り替えます。考え?


編集

実際、これは可能であるように思われます。こちらをご覧ください

私が今理解したいのは、EFまたはL2Sを、それが示すようにではなく、これで動作させることができるかどうかRecordSetsです。

4

2 に答える 2

1

casperOne が言っているのは、Silverlight はブラウザからではクライアント上の本格的なデータベースにアクセスできないということです。実行できる最善の方法は、分離ストレージまたは Silverlight 4 でアクセス可能ないくつかのフォルダーのいずれかで、ある種のコンパクトなデータベースを使用することです。私は個人的に siaqodb.com を使用しましたが、データを手動で同期しておく必要があります (これは悪夢になる可能性があります)。

最近、誰かがSQL コンパクト データベースにアクセスできるのを見ました。ただし、現在、データにアクセスする方法は他にもある可能性があります。Silverlight 用のクライアント側データベースを探してからしばらく経ちました。

于 2010-10-01T01:07:42.277 に答える
1

Silverlight (任意のバージョン) では、問題はデータベースへの接続性ではありません。Silverlight にはそれがありません。できることは、リクエストの発信元のサーバーにコールバックすることだけです。

このため、ある種のローカル IIS インスタンスを実行して接続する必要があり、それがローカル SQL インスタンスに接続されます。

SL アプリケーションがサイトから読み込まれ、接続が失われた場合、アプリはそれを検出できませんでした。ローカル マシン上のサーバーへの新しいリンクに移動し、再び接続できるようになったら元に戻す必要があります。

このような場合は、Winforms アプリを使い続けて、そこに接続できるかどうかを判断するのがおそらく最善です。そうすれば、接続していないときにアクセスするデータベースを切り替えることができます。

于 2010-09-30T18:28:56.020 に答える