Си диез / Говнокод #2551 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
protected void DuplicateFilterNameValidator(object source, ServerValidateEventArgs args)
    {
        string _filterName = FilterName.Text;
        SqlCommand command = new SqlCommand();
        SqlDataReader filterNameReader = null;
        try
        {
            SqlConnection connection = new SqlConnection(strConn);
            connection.Open();
            command.CommandText = "EventNotificationFilterSelectByName";
            command.Connection = connection;
            command.CommandType = CommandType.StoredProcedure;
            command.Parameters.Add(new SqlParameter("@filterName", _filterName));
            filterNameReader = command.ExecuteReader();

            if (filterNameReader.HasRows)
            {
                args.IsValid = false;
            }

            if ((connection != null) & (connection.State == ConnectionState.Open))
            {
                connection.Close();
            }
        }
        catch (Exception e)
        {
            _log.Error(e);
        }

    }

omg...

Запостил: Sharp Sharp, (Updated )

Комментарии (10) RSS

  • проверка (connection != null) & (connection.State == ConnectionState.Open) доставляет
    Ответить
    • что именно доставило? & - обычная опечатка. В остальном все верно
      Ответить
      • если прога дошла до этого места, то connection по любому не null, оно бы сфейлилось еще на connection.open. и при закрытии соединения совсем не обязательно проверять, открыто ли оно
        Ответить
      • (connection != null) & (connection.State == ConnectionState.Open)
        Порядок сравнения не известен. Например connection == null, тк (connection != null) ещё не проверялась, а (connection.State == ConnectionState.Open) - уже пытаеться обращаться к не существующему классу. connection
        Ответить
        • >>Порядок сравнения не известен.

          ты это разработчикам расскажи, а то они и не знают, что в шарпе частичные вычисления и порядок строго слева-направо
          Ответить
    • Кстати, не далее, чем вчера, у нас в проекте такое же обнаружил:)
      Ответить
  • Единственна говнистость - если случится ошибка в сторед процедуре, то конекшн не закроется
    Ответить

Добавить комментарий

Переведи на "PHP", guest!

    А не использовать ли нам bbcode?


    8