開発者にSQLDataReader()または接続を強制的に閉じるようにstylecopでルールを定義する方法は?
他の解決策が存在する場合は、提案してください。
必要な解決策は、開発者に sqldatareader を強制的に閉じることです。
また
データリーダーの接続が近いことを確認するために、DALまたはその他のアプローチで他の変更を行うことができます..
開発者にSQLDataReader()または接続を強制的に閉じるようにstylecopでルールを定義する方法は?
他の解決策が存在する場合は、提案してください。
必要な解決策は、開発者に sqldatareader を強制的に閉じることです。
また
データリーダーの接続が近いことを確認するために、DALまたはその他のアプローチで他の変更を行うことができます..
デリゲートを使用するのはどうですか?正確なアーキテクチャはわかりませんが、ExecuteReader()
メソッドを独自のメソッドでラップしましExecuteReaderWrapper()
た。正しいDB接続が使用されるように 呼び出しましょう。ExecuteReaderWrapper()
基本的には、SqlDataReader
によって返されたExecuteReader()
.
現在、これらのメソッドを使用してカスタム コードを記述していない (DataSets
代わりに使用している) ため、問題はありません。ExecuteReaderWrapper()
ただし、1 つのオプションは、 を返す代わりにデリゲートを期待するように変更することSqlDataReader
です。次に、をデリゲートExecuteReaderWrapper()
に渡し、SqlDataReader
その後必要なすべてのクリーンアップに渡します。そうすれば、開発者は閉鎖についてまったく心配する必要がなくなります。