private void ClearReference(object referencedObject)
{
try {
if (referencedObject is AbstractDbCommand) {
((AbstractDbCommand)referencedObject).CloseInternal();
}
else if (referencedObject is AbstractDataReader) {
((AbstractDataReader)referencedObject).CloseInternal();
}
}
catch (SQLException) {
// suppress exception since it's possible that command or reader are in inconsistent state
}
}