EntepriseLibraryを使用してデータベースにクエリを実行しています。クエリを実行するときは、ストアドプロシージャに依存しています。現在、次のようなコードを使用しています。
Database database = DatabaseFactory.CreateDatabase();
DbCommand command = database.GetStoredProcCommand("MyStoredProcedureName");
database.AddInParameter(command, "filter", DbType.String, filter);
Result result = null;
using (IDataReader reader = database.ExecuteReader(command))
{
if (reader.Read())
result = new Result(reader);
}
return result;
リーダーが閉じていることをどのように確認できますか?アプリケーションが後続のロードでロードに失敗することがあることに気づきました。何かが開いたままになっているのではないかと思います。しかし、私はそれを追跡する方法を理解することはできません。
上記のコードに基づいて、「使用中」のためにリーダーを閉じて破棄するべきではありませんか?
ありがとうございました!