ADO.NetアプリケーションのSQL ServerへのADO-DB接続に問題があります。 Webサービスの開始時および終了時に接続を開きます。サービスが実行されている限り、接続が開かれていることを意味します。 実際にトランザクションを処理するCOM DLLに接続を渡しています。 私は今、1つの問題に直面しています。同じ実行が以前に働きましたが、しばらくしてからコマンドが例外をスローします。しかし、接続状態はOpenのみを示します。 接続を閉じてから、トランザクションを再試行する必要があります。この方法で動作します。 しかし、私は根本的な原因を知りたいと思っています。 もう1つのこと、私たちはただ1人のクライアントしかいません。ADODB接続をしばらく開いておく
0
A
答えて
0
アプリケーションのライフタイム全体にわたって接続を維持することは悪い習慣です。接続にはタイムアウトがあり、ネットワーク上の問題などがあります。接続は単に失敗する可能性があり、回避する方法はありません。例外を捕まえて何らかの形で処理する必要があります。また、単一接続で2つの同時トランザクションを持つことができないため、複数の要求を同時に処理することはできません。
正しい方法は、Webサービス要求ごとに新しい接続を作成することです。 .NETはデフォルトで接続プールを使用するため、パフォーマンスへの影響はごくわずかです。
関連する問題
- 1. C#からExcel ODBC接続を開く
- 2. http接続を開く:android.os.NetworkOnMainThreadException
- 3. ADODB接続から.NETへの移行
- 4. 持続的接続を開く
- 5. しばらくしてJDBC接続をリサイクル
- 6. ソケットを無期限に開いておくための3g接続のオーバーヘッドは
- 7. Pythonとのリモート接続を開く(および維持する)
- 8. "接続は既に開いています(状態=開く)"
- 9. .NETアプリケーションでデータベース接続を開く時間はどのくらいですか?
- 10. vb.netでODBC接続を開く方法
- 11. エリクシールプラグ接続をチャンクモードで開く
- 12. PostgreSQLデータベース接続を開く効率
- 13. Windows Phone 7でTCP接続を開く
- 14. Androidアプリ、モバイルデバイスとの接続を開く
- 15. デバイス接続時にアプリケーションを開く
- 16. XMPP接続でサーバーに接続してください。
- 17. jdbcプログラムを使用してOffice odbファイルを開くに接続
- 18. Unityからのインターネット接続を確認してください。
- 19. ウェブサイトからデータベースにアンドロイドアプリを接続してください
- 20. PHPで複数のgetリクエストに対してmysql接続を開いておくには?
- 21. URL変数をしばらくお待ちください。
- 22. シェル・スクリプトからoracleデータベースに接続してください
- 23. 接続を開いたままにしておくために正常に再起動
- 24. Rails:しばらくお待ちください..レポート生成ページ
- 25. ADOdb - PHP + MySQLクラスのスコープと接続
- 26. node-mysqlモジュールを使用して接続を開くのはいつですか?
- 27. wifi接続時までお待ちください。
- 28. 方法:http接続を介してプログラムでPDFファイルをダウンロードして開く
- 29. セッションをAndroidアプリからWebビューのウェブサイトに開いておく
- 30. mysql接続。私はそれを生かしておくか、各トランザクションの前に新しい接続を開始する必要がありますか?
あなたにはどんな例外がありますか?サービスの開始時に接続を開くとどういう意味ですか?リクエストごとに接続を開くことを意味しますか、またはアプリケーションの全ライフタイムに一度だけ接続を開きますか? COMコンポーネントは接続と何をしますか?あなたが非常に重要な詳細を見逃したので、あなたの質問を改善してください。 –
C++(COM dll)から例外はE_FAILです.Netで同じことをテストしたときの例外は "Connection failure"です。Webサービスが開始されたときに接続を開始しています(アプリケーションの全期間のみ) .COMコンポーネントは実際にすべてのトランザクションを実行するコンポーネントです。接続オブジェクトはCOMコンポーネントに渡されます。 – Sana