1. C# / Говнокод #13455

    +115

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    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
    32. 32
    private string GenerateUserName(ISession session)
    {
      string userName = "";
      while (true)
      {
        if (IsBrand) userName = FName.Replace(" ", "");
        else userName = string.Format("{0}.{1}", FName, LName);
    
        if (String.IsNullOrEmpty(FName) && String.IsNullOrEmpty(LName))
        {
          userName = UserID.ToString();
        }
        else
        {
          var i = 0;
          while (UserBeanHelper.GetUserByUserName(session, userName) != null)
          {
            i++;
            userName = string.Format("{0}.{1}-{2}", FName, LName, i);
          }
        }
    
        UserTransferBean userByUserName = UserBeanHelper.GetUserByUserName(session, userName);
        if (userByUserName != null)
           ;
        else
        {
          break;
        }
      }
      return userName;
    }

    Запостил: DarkThinker, 19 Июля 2013

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

    • Видать, автор до этого файлы на диск сохранял. Ну и тут решил особо не заморачиваться...
      Ответить
      • Ух, а оно-ж ещё и в 2х циклах, да ещё и один и тот-же метод вызывает минимум 2 раза...
        Конечно, такие вещи вообще-то в источнике данных делаются, если это не "пещера с гоблинами".
        Ответить
    • if (userByUserName != null)
             ;
          else
          {
            break;
          }

      ЧТО ЭТО???
      Ответить
      • Индусы, как они есть.
        Ответить
      • это
        "Хочешь быть передовым - сей квадратно-гнездовым!"
        Ответить
    • > while (true)
      это месть за выпиливание goto
      Ответить
    • > UserBeanHelper
      > UserTransferBean
      кофейной жабой запахло
      Ответить
    • Что то я не понял - все инфа в вечном цикле извлекается из FName и LName, которые в самом цикле не меняются......

      И вообще, как я понял, если с первого раза не проскочил, то в цикле навечно, так?
      Ответить

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