0

作業単位とリポジトリ パターンである WPF アプリケーションを開発しました。SQL Server CE 3.5 SP2 を使用しています。私のアプリケーションは、シングル スレッドで使用すると正常に動作します。しかし、サーバーで使用している場合、ユーザーはリモートデスクトップ接続を介して接続し、マルチスレッドアプリケーションになり、問題が発生します。

私のデータベースは にありEnvironment.SpecialFolder.CommonApplicationDataます。

2 人のユーザーが同時にデータベースとのトランザクションを開始すると、次のエラーが発生します。

内部エラー: 共有メモリ領域を開けません。

データベースは別のユーザーによって既に開かれています。

この状況を回避する最善の方法は何ですか? または、状況を回避できない場合、この例外を処理する最善の方法は何ですか..

4

1 に答える 1

0

@marc_s がコメントしているSQL Server Expressように、複数の同時ユーザーがアプリケーションからデータベースに同時に正常にアクセスできるようにするには、少なくともまたはそれ以上のバージョンを使用するようにしてください。

マルチ ユーザー シナリオの SQL Server CE で同様の質問がありましたが、これは本当にばかげているのでしょうか。投稿とその投稿には、あなたが見なければならない詳細が記載された良い答えがあります。

于 2013-10-05T14:21:30.813 に答える