/// <inheritdoc cref="DbCommand.ExecuteScalar()" />
        public override object ExecuteScalar()
        {
            if (_profiler == null || !_profiler.IsEnabled)
            {
                return(WrappedCommand.ExecuteScalar());
            }

            _profiler.OnExecuteScalarStart(this);

            object result = null;

            try
            {
                result = WrappedCommand.ExecuteScalar();

                return(result);
            }
            catch (Exception ex)
            {
                _profiler.OnCommandError(this, ex);

                throw;
            }
            finally
            {
                _profiler.OnExecuteScalarFinish(this, result);
            }
        }
        /// <inheritdoc cref="DbCommand.ExecuteScalar()" />
        public override object ExecuteScalar()
        {
            QueryStart = DateTime.Now;
            var cn = Connection as AdoNetProfilerDbConnection;

            if (cn != null)
            {
                cn.TotalQueries++;
            }

            if (_profiler == null || !_profiler.IsEnabled)
            {
                return(WrappedCommand.ExecuteScalar());
            }

            _profiler.OnExecuteScalarStart(this);

            object result = null;

            try
            {
                result = WrappedCommand.ExecuteScalar();

                return(result);
            }
            catch (Exception ex)
            {
                _profiler.OnCommandError(this, ex);

                throw;
            }
            finally
            {
                _profiler.OnExecuteScalarFinish(this, result);
            }
        }