データベース接続(WCF RIA + EF経由)がいつ開かれるか、いつ閉じられるかを知る必要があります。しかし、私のDomainService(Web側)メソッドでは:
return this.ObjectContext.Connection.State.ToString();
常に「closed」を返します。今だけでも成功した応答でした。WFC RIAでは「open-」および「closeconnection」コマンドを呼び出さないため、接続は実際には最初の要求後に開かれ、タイムアウト(web.configで構成)後に自動的に閉じられます。しかし、主な問題は、接続がタイムアウトした場合、DomainContextがクライアント側にこれについて何も通知しないことです。
したがって、接続がタイムアウトし、ユーザーがデータベースにリクエストを送信しようとすると、例外(実際にはアクセス例外)が発生し、DomainContextは非表示で自動的に接続を復元し、ユーザーは2回目のリクエスト後に応答を取得できます(すべてタイムアウト後)。
そのため、接続状態が閉じているとき、開いているときを知る必要があります。
そして、実際の接続状態をリアルタイムで表示できるインジケーターを作成したいだけです。
そして、2番目のそれほど重要ではない質問-データベースアクション(ログイン、ログアウト、GetQuerriessなどを含む)を暗黙的に指定するために、1つの静的DomainContextオブジェクトを作成する必要がありますか?大丈夫ですか?ほぼ各操作グループに対してDomainContextの新しいインスタンスを取得しますか?願わくば、あなたは私の考えを理解してくれました。