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

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    catch (Exception ex)
                {
                    status = ex.Message;
                    throw ex;
                }

    zhilinskyegor, 07 Мая 2015

    Комментарии (21)
  2. C# / Говнокод #18120

    +147

    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
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    public static object get_pack_print(int packid)
                {
                    OracleConnection conn = connect();
                    conn.Open();
                    string json = "";
                    string sql1 = "select id, num, k01.fio||' '||k01.fnam||' '||k01.fot fio, k02.fio||' '||k02.fnam||' '||k02.fot fior, s01.s_name_s sno, s02.s_name_s snor " +
                                  "from ertd_card ec, HCM_K01@DBLKIPR k01, HCM_K01@DBLKIPR k02, HCM_S01@DBLKIPR s01, HCM_S01@DBLKIPR s02 " +
                                  "where " +
                                  "EC.PACKID=" + packid +
                                  " and k01.tnr = ec.tnr " +
                                  "and k02.tnr = ec.tnrr " +
                                  "and s01.s_no = ec.sno " +
                                  "and s02.s_no = ec.snor " +
                                  "and ec.del= 0";
                    try
                    {
    
                        OracleCommand cmd = new OracleCommand(sql1, conn);
                        cmd.CommandType = CommandType.Text;
                        OracleDataReader dr = cmd.ExecuteReader();
                        dr.Read();
                       
                        do
                        {
                            if (string.IsNullOrEmpty(json))
                            {
                               
    
                                json += "{\"data\":[{\"id\":\"" + dr["id"].ToString() + "\",\"num\":\"" + dr["num"].ToString() + "\",\"sno\":\"" + dr["sno"].ToString() + "\",\"snor\":\"" + dr["snor"].ToString() +
                                    "\",\"fio\":\"" + dr["fio"].ToString() +
                                    "\",\"fior\":\"" + dr["fior"].ToString() + "\"}";
    
                            }
                            else
                            {
                                json += ",{\"id\":\"" + dr["id"].ToString() + "\",\"num\":\"" + dr["num"].ToString() + "\",\"sno\":\"" + dr["sno"].ToString() + "\",\"snor\":\"" + dr["snor"].ToString() +
                                    "\",\"fio\":\"" + dr["fio"].ToString() +
                                    "\",\"fior\":\"" + dr["fior"].ToString() + "\"}";
                            }
                        }
                        while (dr.Read());
                      
                        json += "]}";
    
                        conn.Close();
                        return new System.Web.Script.Serialization.JavaScriptSerializer().DeserializeObject(json);
                      
                    }
                    catch (Exception ex)
                    {
                        conn.Close();
                        return null;
                    }
                }

    да просто стиль у него такой. Суровый.
    += "}"

    LIBERTE, 06 Мая 2015

    Комментарии (24)
  3. C# / Говнокод #18118

    +942

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    public static class IntExtension
        {
            public static int NotMoreThan(this int i, int thanWhat){
                return i < thanWhat ? thanWhat : i;
            }
        }

    непонятно что

    tjmaster, 06 Мая 2015

    Комментарии (70)
  4. C# / Говнокод #18116

    +144

    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
    public string[] razborstroki(string str)
            {
                string[] array = new string[100];
                int j = 0;
                for (int i = 0; i < str.Length; i++)
                {
                    if (str[i] != ';')
                        array[j] += str[i];
                    else
                        j++;
                }
                return array;
            }

    Обнаружил недавно в одном из переданных нам проектов. Правильно, у нас будет свой split с маджонгом и гейшами!!!!

    flea3m, 05 Мая 2015

    Комментарии (0)
  5. C# / Говнокод #18098

    +147

    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
    public static void Unsubscribe
    <
    	T1,		T2,		T3,		T4,
    	T5,		T6,		T7,		T8,
    	T9,		T10,		T11,		T12,
    	T13,		T14,		T15,		T16
    >
    (
    	TKey eventKey,
    	Action
    	<
    		T1,		T2,		T3,		T4,
    		T5,		T6,		T7,		T8,
    		T9,		T10,		T11,		T12,
    		T13,		T14,		T15,		T16
    	> handler
    )
    { handlers[eventKey] -= handler; }

    Боль.

    pushistayapodmyshka, 30 Апреля 2015

    Комментарии (278)
  6. C# / Говнокод #18089

    +142

    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
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    public List<MainTZInfoVO> GetMyJobs(bool flag1, bool flag2, bool flag3, bool flag4, string date1, string date2)
    {
        List<MainTZInfoVO> ulist = new List<MainTZInfoVO>();  // список заданий пользователя
        string sIdUser = usr.GetUserOrAssistansID().ToString();   // ID пользователя
        
        //выданы мне задания
        string sql1 = "select ID_TZ as ID, DATE_VYD, DESCR, SODER, STATUS||' '||CASE WHEN NVL(LAST_TZ,'0')=1 THEN chr(10)||' !Последнее' END as STATUS, '1' as NOT_RECEIVED from tz_all_jobs where (trim(id_ispol) like '%,'||'" + sIdUser + "'||',%' or trim(id_ispol) like '" + sIdUser + "'||',%') and (status='Выдано' or status = 'Отклонено частично') and nvl(id_prin,' ') not like  '%,'||'" + sIdUser + "'||',%' and  nvl(id_prin,' ') not like '" + sIdUser + "'||',%' and nvl(id_otkl,' ') not like  '%,'||'" + sIdUser + "'||',%' and  nvl(id_otkl,' ') not like '" + sIdUser + "'||',%'";
        //принятые мной, не рассмотренные другими
        string sql2 = "select ID_TZ as ID, DATE_VYD, DESCR, SODER, STATUS||' '||CASE WHEN NVL(LAST_TZ,'0')=1 THEN chr(10)||' !Последнее' END as STATUS, '0' as NOT_RECEIVED from tz_all_jobs where (status='Выдано' or status = 'Отклонено частично') and (nvl(id_prin,' ')  like  '%,'||'" + sIdUser + "'||',%' or  nvl(id_prin,' ')  like '" + sIdUser + "'||',%' or nvl(id_otkl,' ')  like  '%,'||'" + sIdUser + "'||',%' or  nvl(id_otkl,' ')  like '" + sIdUser + "'||',%')";
        //выданные мне в статусе отклонено
        string sql3 = "select ID_TZ as ID, DATE_VYD, DESCR, SODER, STATUS||' '||CASE WHEN NVL(LAST_TZ,'0')=1 THEN chr(10)||' !Последнее' END as STATUS, '2' as NOT_RECEIVED from tz_all_jobs where  (id_ispol like '%,'||'" + sIdUser + "'||',%' or id_ispol like '" + sIdUser + "'||',%') and (status='Отклонено' or status='Аннулировано')";
        //ограничение по дате
        string sql4 = "date_vyd between to_date('" + date1 + "','DD.MM.YYYY') and to_date('" + date2 + "','DD.MM.YYYY')";
        string sql = " ";
        //формируем sql-ку по флажкам, которые передаем в функцию
        if (flag1 == true)
        {
            sql = sql1;
        }
        if (flag2 == true)
        {
            if (sql.Length > 1)
            {
                sql = sql + " union " + sql2;
            }
            else
            {
                sql = sql2;
            }
        }
        if (flag3 == true)
        {
            if (sql.Length > 1)
            {
                sql = sql + " union " + sql3;
            }
            else
            {
                sql = sql3;
            }
        }
        if ((flag4 == true) & (sql.Length > 1))
        {
            sql = "select * from (" + sql + ") tabl where " + sql4;
        }
        sql = sql + " order by date_vyd desc";
    
        OracleCommand cmd = new OracleCommand(sql, connection);
        OracleDataReader reader = cmd.ExecuteReader();
        //ТУТ ПЕРЕДЕЛАТЬ ВСЕ
        /*заполнение полей из ридера*/
        while (reader.Read())
        {
            //...
        }
        return ulist; 
    }

    в этом коде прекрасно все (имена и типы переменных, жестокое обращение с датами, чуть менее жестокое обращения с "флажками", соединение с Ораклом, которое открывается где-то за пределами вселенной и не закрывается нигде, и еще много всего)...
    дочитав этот шедевр до строчки //ТУТ ПЕРЕДЕЛАТЬ ВСЕ, просто невозможно не прослезиться...

    svetkeen, 29 Апреля 2015

    Комментарии (0)
  7. C# / Говнокод #18042

    +943

    1. 1
    таблица.ячейки.Where(ячейка => ячейка.выбрана).ToList().ForEach(ячейчка => ячейчка.ОчиститьЗначение());

    Похоже, у автора сама цель усложнить понимание кода и использовать LINQ. Я бы написал так:
    foreach (var ячейка in таблица)
    if (ячейка.выбрана)
    ячейчка.ОчиститьЗначение();

    Dimarius, 22 Апреля 2015

    Комментарии (43)
  8. C# / Говнокод #18023

    +937

    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
    public DataTable GetAllVideoDevice()
           {
               DataTable dt = DbUtil.GetData("SELECT VideoUrlId,VideoUrlName FROM VideoUrl");
               return dt;
           }
    
           public int GetVideoDeviceCount()
           {
               int i = 0;
               DataTable dt = GetAllVideoDevice();
               if (dt.Rows.Count > 0) return dt.Rows.Count;
               else return i;
           }

    У меня будут свои нули с блекджеком и шлюхами

    visviva, 20 Апреля 2015

    Комментарии (22)
  9. C# / Говнокод #18022

    +144

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    public int[] GetIntVideoAll(int videoCount)
          {
              List<int> listOfIntsVideo = new List<int>();
              for (int i = 0; i < videoCount; i++)
              {
                  listOfIntsVideo.Add(i);
              }
    
              return listOfIntsVideo.ToArray();
          }
    foreach (int item in mediaServ.GetIntVideoAll(videoCount))
               { ........}

    Вот так вот. Такие жемчужины встречаются с частотой примерно раз в 10 минут в коде одного проекта который я переписываю.

    visviva, 20 Апреля 2015

    Комментарии (4)
  10. C# / Говнокод #18000

    +145

    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
    try
    {
        if (!InitConnectionString())
            throw new Exception("Не инициализирована строка подключения");
        oraConnection.Open();
        // еще какой-то код, в котором тоже может быть исключение
    }
    catch
    {
        // запись в лог сообщения об ошибке
        oraConnection.Close();
        oraConnection.Open();
        OracleConnection.ClearPool(oraConnection);
    }

    так с OracleConnection еще никто не обращался((

    svetkeen, 15 Апреля 2015

    Комментарии (8)