public T FirstOrDefault <T>() { T callback = default; using (SqlCommand command = connection.GetCommand(commandText)) { DatabaseTrace.Append(command.CommandText, Constant.Query); if (connection.HasTransaction) { command.Transaction = connection.Transaction; } using (SqlDataReader reader = command.ExecuteReader(CommandBehavior.SingleRow)) { if (reader.HasRows) { callback = DatabaseReaderSelect <T> .First(reader); } reader.Close(); } } return(callback); }
public T First <T>() { bool read = false; T callback = default; using (SqlCommand command = connection.GetCommand(commandText)) { DatabaseTrace.Append(command.CommandText, Constant.Query); if (connection.HasTransaction) { command.Transaction = connection.Transaction; } using (SqlDataReader reader = command.ExecuteReader(CommandBehavior.SingleRow)) { if (reader.HasRows) { read = true; } if (read) { callback = DatabaseReaderSelect <T> .First(reader); } reader.Close(); } } if (!read) { throw new EntityDatabaseException($"Database Select First {typeof(T).Name} Failed, Nothing Returned With Query : \n\n {commandText}"); } return(callback); }