マルチユーザ環境の場合: すべてのクライアントが互いの変更を確認する方法を教えてください。これを行う最善の方法は何ですか?すべてのクライアントが中央データベースから最新のデータを持っているC#マルチユーザアプリケーションのテクニック
これまで、私はC#アプリケーションを作成し、それを2つのPCにインストールしました。中央のSQL Expressサーバー(Entity Framework Code FirstでORMとして機能していたクライアントアプリケーション)に接続しました。 クライアント1がレコードをデータベースに追加したとき、これはクライアント2に直接見えませんでした。クライアント2がすべてのデータを再度フェッチした(ハード・リフレッシュ)場合にのみ、変更が表示されました。
今、この「同期」(?)のやり方や解決方法についての解決策を探しています。エンティティフレームワークコードの作業が好きです。まず、これを保つことができればうれしいです。 また、アプリケーションはまだ非常に初期段階です。 中央データベースと複数のクライアントを接続することによって考えましたが、これが良い解決策であるかどうかはわかりません。あなたの提案/ソリューションが、クライアントが接続する中央サーバーアプリケーション(そしてサーバーアプリケーションがデータベース処理を行う場所)を必要とする場合、これは問題ではありません。
可能であれば、最新のデータを常に使用する方法を示す基本的なサンプルソリューションや基本的なコードがあれば、非常に役に立ちます。
同様の質問:
- Entity Framework - Underlying data (in database) change notification
- Entity Framework data updates in a multi-user environment with central database
- Entity framework data context not in sync with database?
事前に感謝
それはあなたの環境とあなたが管理しているデータとアーキテクチャあなた次第
お寄せいただきありがとうございます。個人的には、これは良い働き方のようには感じられません。クライアントアプリケーションは、グリッドとグリッドを検索するためにすべてのデータをロードします。したがって、localDBにはsql(express)サーバーのコピー全体があります。そこに私はすでに限界がある(例えば:localDB対SQL Server対SQL Expressの最大データベースサイト)。その他の提案はありますか? – juFo