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

    +141.5

    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
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    switch (Step)
    {
        case 6:
            {
                goto case 5;
            }
        case 5:
            {
                Step = 2;
                goto case 2;
            }
        case 4:
            {
                if (ReadOnly)
                {
                    Step = 2;
                    goto case 2;
                }
                pollingMatrix.Fill(Id, pollingRow.RiskObjectTypeId, languageId, connection);
                Scenario.Fill(Id, pollingRow.RiskObjectTypeId, languageId, connection);
                tbMain.SetCurrentTab(tcEnding);
                break;
            }
        case 3:
            {
                if (ReadOnly)
                {
                    btnPrevPg4.Visible = false;
                    btnNextPg4.Visible = false;
                }
                CleanScenarios();
                Scenario.Fill(Id, pollingRow.RiskObjectTypeId, languageId, connection);
                tbMain.SetCurrentTab(tcScenarios);
                break;
            }
        case 2:
            {
                if (ReadOnly)
                {
                    btnPrevPg3.Visible = false;
                    btnNextPg3.Visible = false;
                }
                pollingMatrix.Fill(Id, pollingRow.RiskObjectTypeId, languageId, connection);
                tbMain.SetCurrentTab(tcPollingMatrix);
                break;
            }
        case 1:
            {
                if (ReadOnly)
                {
                    btnPrevPg2.Visible = false;
                    btnNextPg2.Visible = false;
    				//tvRiskFactors.Enabled = false;
    				//tvRiskObjects.Enabled = false;							
    
    				//Раскрывает ноду если есть отмеченные дочерние элементы							
    				tvRiskObjects.ExpandAllNodes();
                }
                pollingMatrix.Fill(Id, pollingRow.RiskObjectTypeId, languageId, connection);
                doRiskFactorTree();
                doRiskObjectTree();
                hcpRiskObjects.PanelName = pollingRow.QSARiskObjectTypeNameDictionaryName;
                tbMain.SetCurrentTab(tcRiskFactors);
                break; //goto case 0;
            }
        case 0:
            {
                if (ReadOnly)
                {
                    Name.ReadOnly = true;
                    Comment.ReadOnly = true;
                    Hypothesis.ReadOnly = true;
                    calDateTo.Enabled = true;
                    RiskObjectTypeId.ReadOnly = true;
                    btnNextPg1.Visible = false;
                	Instructions.ReadOnly = true;
                }
                tbMain.SetCurrentTab(tcPolling);
                break;
            }
        default:
            {
    #if (DEBUG)
                exc_viewer.ViewException(@"Неверный Step, провалились в default");
    #endif
                Step = 0;
                goto case 0;
            }
    }

    Часть метода из 200 строк в кодбехайнде ASP.NET странички...
    Красота!!! =)

    naumenkopa, 21 Сентября 2009

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

    +136.4

    1. 1
    2. 2
    3. 3
    4. 4
    // Работаю asp.net программистом.
    // Показал главному программисту, как с помощью System.Web.Routing можно легко делать человекопонятные урлы.
    // Итог: Теперь у сайта урлы вида http://domain/filterDisks/42/0/14/1.
    // Вот сижу и думаю, что значат все эти циферки :'о(

    Ordos, 21 Сентября 2009

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

    +132.2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    cboRole.DataSource = Controller.GetViewForRole();
    cboRole.DataBind();
    
    try {
       cboRole.SelectedValue = roleId.ToString();
    } catch (ArgumentOutOfRangeException) {
       cboRole.Items.Add(new ListItem(roleName, roleId.ToString()));
       cboRole.SelectedValue = roleId.ToString();
    }

    Нету значения - не проблема, создадим и присвоим. Не беда, что инициализация рядом...

    batonkolbas, 17 Сентября 2009

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

    +129.3

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    // IPrincipal Implementation
    public bool IsInRole(string role)
    {
      return Array.BinarySearch( _roles, role ) >=0 ? true : false;
    }
    public IIdentity Identity
    {
      get
      {
        return _identity;
      }
    }

    Взято из Building Secure ASP.NET Applications: Authentication, Authorization, and Secure Communication (http://msdn.microsoft.com/en-us/library/aa302401.aspx)

    Step 4. Create a Class that Implements and Extends IPrincipal
    6. Implement the IsInRole method and Identity property defined by the IPrincipal interface as shown below.

    mikle.smirnov, 16 Сентября 2009

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

    +103.9

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    public Parameter()
                {
                    _name = new String((char[])null);
                    Value = new String((char[])null);
                }

    Вот такой забавный метод инициализации пустой строки обнаружил в чужом коде 0_о

    samuilovaa, 15 Сентября 2009

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

    +102.6

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    //Получаем путь к програме
    public static string getProgramPath()
    {
                  return Console.Title;
    }

    psina-from-ua, 12 Сентября 2009

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

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    public void onApplicationStateChanged(int state)
    {
                if (state == Application.APPSTATE_UNINITIALIZED)
                {
                           // TODO: what to do?
                }
    }

    Чувак начал писать и забыл о чем...

    vassabi, 08 Сентября 2009

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

    +127

    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
    /// <summary>
        ///  Retrieve currency rates from an external site to be sure they are up to date.
        /// In this case just checking the one currency (Australian Dollar) so no need to dynamically parse the site.
        /// </summary>
        /// <returns>currency rates or msg indicating an error</returns>
        private String getCurrencyRates()
        {
            string strURL = @"http://www.x-rates.com/d/JPY/table.html";
            HttpWebRequest txtRequest = (HttpWebRequest)WebRequest.Create(strURL);
    
            txtRequest.Method = "GET";
            txtRequest.ContentType = "application/x-www-form-urlencoded";
            string response;
            using (StreamReader streamReader = new StreamReader(txtRequest.GetResponse().GetResponseStream()))
            {
                response = streamReader.ReadToEnd();
                if (response.IndexOf("Australian Dollar") > 0)
                {
                    //parse the returned page for the two values of the currency rate based on the existing design
                    int ind_jpy = (response.IndexOf("/d/AUD/JPY/graph120.html") + 39);
                    int ind_aud = (response.IndexOf("/d/JPY/AUD/graph120.html") + 39);
                    String jpy_aud = response.Substring(ind_jpy, (response.IndexOf("</a>",ind_jpy) - ind_jpy) );
                    String aud_jpy = response.Substring(ind_aud, (response.IndexOf("</a>", ind_aud) - ind_aud));
                    Session["curr_rate"] = "set";
                    Session["JPY"] = jpy_aud;
                    Session["AUD"] = aud_jpy;
                    return aud_jpy + " / " + jpy_aud;
                }
                //else present msg to user that unable to obtain currency rates
            }
            return "";
        }

    Еще один кандидат

    OlgaWolga, 07 Сентября 2009

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

    +135.2

    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
    public string GetDollarKurs(string input)
    {
        string dol = "[.\\s]*<img height=\"11\" alt=\"Доллар США\" hspace=\"2\" src=\"/images/icon_dollar.gif\" width=\"11\" align=\"left\" vspace=\"2\" border=\"0\">Доллар \r\n\t\t\tСША</td>\r\n\t\t<td></td>\r\n\t\t<td class=\"digit\" align=\"right\">[\\s]*\\d+\\,\\d+[.\\s]*";
        MatchCollection Matches = Regex.Matches(input, dol);
        if (Matches.Count == 1)
        {
            string res = Matches[0].Value;
            res = res.Trim();
            res = res.Substring(res.LastIndexOf('>') + 1);
            return res;
        }
        else
            return "";
    }

    Функция для получения курса доллара, в input подаётся хтмл главной страницы сайта cbr.ru и парсится.
    А web-сервисы пусть кто-нибудь другой изучает... :o)

    Ordos, 06 Сентября 2009

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

    +132.5

    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
    foreach ( DataRow dr in dsWorkPolicyTa.Tables[0].Rows)
    {
    	if(strMasterNumber==dr["MAST_NO"].ToString() && strMasterSequence == dr["MAST_SEQ"].ToString() && strSectionSequence == dr["SEQ"].ToString() && strPremiumCurrency == dr["PREMIUM_CURRENCY"].ToString())
    	{
    		if (( strPremiumCurrency.CompareTo(dr["PREMIUM_CURRENCY"].ToString())==0)&& ( dr["ENDORSEMENT_NUMBER"].ToString().CompareTo(dsWorkPolicyTa.Tables[0].Rows[marker]["ENDORSEMENT_NUMBER"].ToString()) == 0 )&& (strEntrySurrogate==dr["EYAFNB"].ToString()) && ( dr["E2E0CD"].ToString().CompareTo(dsWorkPolicyTa.Tables[0].Rows[marker]["E2E0CD"].ToString()) == 0 ))
    		{
    			//Unauthorised/Policy Premium
    			if((dsWorkPolicyTa.Tables[0].Rows[marker]["PREMIUM"]!= System.DBNull.Value)&& (dr["PREMIUM"] != System.DBNull.Value)&& (dsWorkPolicyTa.Tables[0].Rows[marker]["PREMIUM"].ToString()!= "")&& (dr["PREMIUM"].ToString() != ""))
    				dsWorkPolicyTa.Tables[0].Rows[marker]["PREMIUM"]=Convert.ToDouble(dsWorkPolicyTa.Tables[0].Rows[marker]["PREMIUM"])+ Convert.ToDouble(dr["PREMIUM"]);
    			else
    				dsWorkPolicyTa.Tables[0].Rows[marker]["PREMIUM"]=dr["PREMIUM"];
    			if((dsWorkPolicyTa.Tables[0].Rows[marker]["PREMIUM_BASE"]!= System.DBNull.Value)&& (dr["PREMIUM_BASE"] != System.DBNull.Value)&& (dsWorkPolicyTa.Tables[0].Rows[marker]["PREMIUM_BASE"].ToString()!= "")&& (dr["PREMIUM_BASE"].ToString() != ""))
    				dsWorkPolicyTa.Tables[0].Rows[marker]["PREMIUM_BASE"]=Convert.ToDouble(dsWorkPolicyTa.Tables[0].Rows[marker]["PREMIUM_BASE"])+ Convert.ToDouble(dr["PREMIUM_BASE"]);
    			else
    				dsWorkPolicyTa.Tables[0].Rows[marker]["PREMIUM_BASE"]=dr["PREMIUM_BASE"];
    			if((dsWorkPolicyTa.Tables[0].Rows[marker]["PREMIUM_OURSHARE"]!= System.DBNull.Value) && (dr["PREMIUM_OURSHARE"] != System.DBNull.Value)&& (dsWorkPolicyTa.Tables[0].Rows[marker]["PREMIUM_OURSHARE"].ToString()!= "") && (dr["PREMIUM_OURSHARE"].ToString() != ""))
    				dsWorkPolicyTa.Tables[0].Rows[marker]["PREMIUM_OURSHARE"]=Convert.ToDouble(dsWorkPolicyTa.Tables[0].Rows[marker]["PREMIUM_OURSHARE"])+ Convert.ToDouble(dr["PREMIUM_OURSHARE"]);
    			else
    				dsWorkPolicyTa.Tables[0].Rows[marker]["PREMIUM_OURSHARE"]=dr["PREMIUM_OURSHARE"];
    			if((dsWorkPolicyTa.Tables[0].Rows[marker]["PREMIUM_BASE_OURSHARE"]!= System.DBNull.Value)&& (dr["PREMIUM_BASE_OURSHARE"] != System.DBNull.Value) && (dsWorkPolicyTa.Tables[0].Rows[marker]["PREMIUM_BASE_OURSHARE"].ToString()!= "")&& (dr["PREMIUM_BASE_OURSHARE"].ToString() != ""))
    				dsWorkPolicyTa.Tables[0].Rows[marker]["PREMIUM_BASE_OURSHARE"]=Convert.ToDouble(dsWorkPolicyTa.Tables[0].Rows[marker]["PREMIUM_BASE_OURSHARE"])+ Convert.ToDouble(dr["PREMIUM_BASE_OURSHARE"]);
    			else
    				dsWorkPolicyTa.Tables[0].Rows[marker]["PREMIUM_BASE_OURSHARE"]=dr["PREMIUM_BASE_OURSHARE"];
    			//Quoted Premium
    			if((dsWorkPolicyTa.Tables[0].Rows[marker]["QUOTED_PREMIUM"]!= System.DBNull.Value)&& (dr["QUOTED_PREMIUM"] != System.DBNull.Value) && (dsWorkPolicyTa.Tables[0].Rows[marker]["QUOTED_PREMIUM"].ToString()!= "")&& (dr["QUOTED_PREMIUM"].ToString() != ""))
    				dsWorkPolicyTa.Tables[0].Rows[marker]["QUOTED_PREMIUM"]=Convert.ToDouble(dsWorkPolicyTa.Tables[0].Rows[marker]["QUOTED_PREMIUM"])+ Convert.ToDouble(dr["QUOTED_PREMIUM"]);
    			else
    				dsWorkPolicyTa.Tables[0].Rows[marker]["QUOTED_PREMIUM"]=dr["QUOTED_PREMIUM"];
    			if((dsWorkPolicyTa.Tables[0].Rows[marker]["QUOTED_PREMIUM_BASE"]!= System.DBNull.Value)&& (dr["QUOTED_PREMIUM_BASE"] != System.DBNull.Value) && (dsWorkPolicyTa.Tables[0].Rows[marker]["QUOTED_PREMIUM_BASE"].ToString()!= "")&& (dr["QUOTED_PREMIUM_BASE"].ToString() != ""))
    				dsWorkPolicyTa.Tables[0].Rows[marker]["QUOTED_PREMIUM_BASE"]=Convert.ToDouble(dsWorkPolicyTa.Tables[0].Rows[marker]["QUOTED_PREMIUM_BASE"])+ Convert.ToDouble(dr["QUOTED_PREMIUM_BASE"]);
    			else
    				dsWorkPolicyTa.Tables[0].Rows[marker]["QUOTED_PREMIUM_BASE"]=dr["QUOTED_PREMIUM_BASE"];

    Кусок примера кода предоставленного кандидатом на должность программиста.
    Модуль называеться "Genius".

    При попытке наговнокодить все 100 строчек произошла "Ошибка компиляции кода: Такой длинный код врядли может быть смешным. Пожалуйста, ограничьтесь сотней строк и 4000 символами."
    Пришлось ограничить 4000 символами, но не стало смешнее :(

    OlgaWolga, 04 Сентября 2009

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