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

    +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
    char[] splitter = { ',' };
    string types = hashtable[FlagsEnumValue].ToString();
    string[] typesStringArray = types.Split(splitter, StringSplitOptions.RemoveEmptyEntries);
    ArrayList typesArray = new ArrayList();
    
    foreach (string str in typesStringArray)
    {
       foreach (string type in Enum.GetNames(typeof(FlagsEnum)))
       {
          if (type == str.Trim())
          {
             typesArray.Add((FlagsEnum)Enum.Parse(typeof(FlagsEnum), str, true));
             break;
          }
       }
    }
    
    
    foreach (FlagsEnum type in typesArray)
    {
       if ((someObject.field & type) > 0)
       {
          typeFound = true;
       }
       else
       {
          typeFound = false;
          break;
       }
    }

    Автор хотел чтобы его любили. Точнее он хотел сконвертировать строковое представление битового енама в инам и сравнить по маске с проперти обьекта. Если бы автор прочел документацию то написал бы так:
    string types = hashtable[FlagsEnumValue].ToString();
    if (types != "")
    {
    FlagsEnum enum = (FlagsEnum)Enum.Parse(typeof(FlagsEnum), types, ignoreCase: true);
    if ((enum & someObject.field) == enum)
    typeFound = true;
    }

    piocsic, 01 Марта 2011

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

    +122

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    var product=dataContext.Products.Where(p=>p.Name == "SomeProductName")
    
    if (products.Count() != 0)
                {
                    return new Product
                    {
                        ProductId = products.First().AM_PRODUCT_ID,
                        ProductName = products.First().PRODUCT_NAME,
                        IsActive = products.First().IS_ACTIVE
                    };
                }

    this way of selecting product from table by its name generate 4 queries instead 1 ...

    O_O, 28 Февраля 2011

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

    +119

    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
    int buf;
                    for (int j = 1; j < srows.Length; j++)
                        for (int i = 0; i < srows.Length - j; i++)
                        {
                            if (vrows[i] > vrows[i + 1])
                            {
                                buf = vrows[i];
                                vrows[i] = vrows[i + 1];
                                vrows[i + 1] = buf;
    
                                buf = srows[i];
                                srows[i] = srows[i + 1];
                                srows[i + 1] = buf;
                            }
                        }

    В коде формы. (c) EGAR

    jonie, 28 Февраля 2011

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

    +139

    1. 1
    Response.Write("<" + '/'.ToString() + "script>");

    Даже не знаю, кому и зачем это понадобилось...

    Ordos, 24 Февраля 2011

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

    +106

    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
    public static bool KeyToString(Keys key, bool shitKeyPressed,
                                                                        out char character)
            {
                bool result = false;
                character = ' ';
                CharPair charPair;
    
                if ((Keys.A <= key && key <= Keys.Z) || key == Keys.Space)
                {
                    // Use as is if it is A~Z, or Space key.
                    character = (shitKeyPressed) ? (char)key : Char.ToLower((char)key);
                    result = true;
                }
                else if (keyMap.TryGetValue(key, out charPair))
                {
                    // Otherwise, convert by key map.
                    if (!shitKeyPressed)
                    {
                        character = charPair.NormalChar;
                        result = true;
                    }
                    else if (charPair.ShiftChar.HasValue)
                    {
                        character = charPair.ShiftChar.Value;
                        result = true;
                    }
                }
    
                return result;
            }

    Разбираю код, скачанный с майкросовтовского App Hub. В коде и комментариях полно маленьких грамматический ошибок, но это...
    Код выложен на полном серьёзе и качается тут http://create.msdn.com/en-US/education/catalog/utility/performance_utility

    P.S. для тупых спойлер: вместо shift написано shit.

    Skelet0n, 23 Февраля 2011

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

    +115

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    var model = Service.GetPlanGatheringIndicators(periodId).ToList();
    ViewData["PeriodName"] = Service.GetPeriods().Where(p => p.Id == periodId).Select(p => p.TextAlias).FirstOrDefault();
    var leafEls = model.Where(x => x.HasChildren == false);
    var leafEl = (leafEls.Count() > 0) ? leafEls.First() : null;
    ViewData["PlanActivated"] = ((leafEl != null) && (leafEl.PlanActivate == true)
    		                             && (leafEl.PredictActivate == true)
    		                             && (leafEl.FactActivate == true));

    Вот в таком чудесном виде и лежит, ожидая рефактора и форматирования.

    fr0mrus, 22 Февраля 2011

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

    +117

    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
    public static class EventExtensions
        {
            public static void Fire(this EventHandler eventHandler, object sender)
            {
                eventHandler.Fire(sender, EventArgs.Empty);
            }
    
            public static void Fire(this EventHandler eventHandler, object sender, EventArgs args)
            {
                eventHandler.FireDelegate(sender, args);
            }
    
            public static void Fire<TEA>(this EventHandler<TEA> eventHandler, object sender, TEA args)
                where TEA : EventArgs
            {
                eventHandler .FireDelegate(sender, args);
            }
    
            public static void FireDelegate(this Delegate eventHandler, params object[] parameters)
            {
                if (eventHandler != null)
                {
                    Delegate[] delegates = eventHandler.GetInvocationList();
                    foreach (var del in delegates)
                    {
                        try
                        {
                            del.Method.Invoke(del.Target, parameters);
                        }
                        catch (Exception e)
                        {
                            // use logger here
                            throw;
                        }
                    }
                }
            }
        }

    Надоело писать инвокаторы для ивентов? Как тебе это?

    walash, 21 Февраля 2011

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

    +124

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    private void image_hide_show(object sender, EventArgs e)
            {
                for(int i = 0; i < Controls.Count; i++)
                    if ((sender as PictureBox).Name + "_img" == Controls[i].Name) Controls[i].Visible = !Controls[i].Visible;
            }

    Мартин, 20 Февраля 2011

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

    +146

    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
    using System;
    
    class Popovkin
    {
        static void Main()
        {
            Console.ForegroundColor = ConsoleColor.DarkRed;
            Console.BackgroundColor = ConsoleColor.Gray;
            Console.WriteLine("Привет, баребухи! Я Ромик Будин!");
            Console.WriteLine("Уже " + DateTime.Now);
            Console.WriteLine("Нажмите Ентер!");
            Console.ReadLine();
            Console.ForegroundColor = ConsoleColor.Green;
            Console.BackgroundColor = ConsoleColor.Black;
            Console.Clear();
            for (int e = 1; e < 1200000; e++)
            {
                Console.ForegroundColor = ConsoleColor.Blue;
                Console.BackgroundColor = ConsoleColor.White;
                Console.Write("Hello Popovkin!!!");
                Console.Write("Hello Popovkin!!!");
                Console.Write("Hello Popovkin!!!");
                Console.Write("Hello Popovkin!!!");
                Console.Write("Hello Popovkin!!!");
                Console.Write("Hello Popovkin!!!");
                Console.Write("Hello Popovkin!!!");
                Console.Write("Hello Popovkin!!!");
                Console.Write("Hello Popovkin!!!");
                Console.Write("Hello Popovkin!!!");
                Console.Write("Hello Popovkin!!!");
                Console.Write("Hello Popovkin!!!");
                for (int i = 0; i < 2; i++)
                {
                    Console.ForegroundColor = ConsoleColor.Green;
                    Console.BackgroundColor = ConsoleColor.Black;
                    Console.Write("Hello Popovkin!!!");
                    Console.Write("Hello Popovkin!!!");
                    Console.Write("Hello Popovkin!!!");
                    Console.Write("Hello Popovkin!!!");
                    Console.Write("Hello Popovkin!!!");
                    Console.Write("Hello Popovkin!!!");
                    Console.Write("Hello Popovkin!!!");
                    Console.Write("Hello Popovkin!!!");
                    Console.Write("Hello Popovkin!!!");
                    Console.Write("Hello Popovkin!!!");
                    Console.Write("Hello Popovkin!!!");
                    Console.Write("Hello Popovkin!!!");
                    for (int q = 0; q < 2; q++)
                    {
                        Console.Write("Hello Popovkin!!!");
                        Console.Write("Hello Popovkin!!!");
                        Console.Write("Hello Popovkin!!!");
                        Console.Write("Hello Popovkin!!!");
                        Console.Write("Hello Popovkin!!!");
                        Console.Write("Hello Popovkin!!!");
                        Console.Write("Hello Popovkin!!!");
                        Console.Write("Hello Popovkin!!!");
                        Console.Write("Hello Popovkin!!!");
                        Console.Write("Hello Popovkin!!!");
                        Console.Write("Hello Popovkin!!!");
                        Console.Write("Hello Popovkin!!!");
                        Console.Write("Hello Popovkin!!!");
                        Console.Write("Hello Popovkin!!!");
                        Console.Write("Hello Popovkin!!!");
                        Console.Write("Hello Popovkin!!!");
                        Console.WriteLine("Hello Popovkin!!!");
                        Console.ForegroundColor = ConsoleColor.Blue;
                        Console.BackgroundColor = ConsoleColor.Red;
                    }
                }
            }
            Console.ReadLine();
        }
    }

    111111, 19 Февраля 2011

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

    +123

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    string numberAsString = number.ToString();
    
        foreach(char x in numberAsString)
        {
            string y = x.ToString();
            int z = int.Parse(y);
            Console.WriteLine(z*z);
        }

    qbasic, 17 Февраля 2011

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