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

    +129

    1. 1
    2. 2
    Margin="0"
    mc:Ignorable="d" Margin="0,0,-191,-31" d:DesignHeight="477.612" d:DesignWidth="671.642" >

    Это кусочек XAML (WPF). Даже не знаю что сказать, наверное мысли были такие: "Мне нужно именно туда и именно так"

    Smekalisty, 27 Сентября 2013

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

    +126

    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
    private string _itemName;
    public string ItemName
    {
    	get { return _itemName; }
    	set
    	{
    		if (_itemName != value)
    		{
    			_itemName = value;
    			RaisePropertyChanged("ItemName");
    			CustomValue = GetCustomValue(ItemName);
    		}
    	}
    }

    Незнаю насколько этот код можно считать говнокодом, но его неочевидность сразу бросилась в глаза

    Smekalisty, 27 Сентября 2013

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

    +107

    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
    public class Visit 
    {
    	public DateTime Start {get; set;}
    	public DateTime Finish {get; set;}
    }
    
    public bool IsConflict(Visit a, Visit b)
    {
    	var s = GetArray(a);
    	var s2 = GetArray(b);
    	return Compare(s,s2);
    }
    
    private List<string> GetArray(Visit visit)
    {
    	var list = new List<string>();
    	while (visit.Start < visit.Finish)
    	{ 
    	  list.Add(visit.Finish.ToString()); // в строках!
    	  visit.Finish -= TimeSpan.FromMinutes(1); // по 1й минуте!!!
    	}
    	return list;
    }
    private bool Compare(List<string> list1, List<string> list2)
    {
    
    	foreach (var s in list1)
    	{
    		if (list2.Any(x => x == s))
    		{
    			return false;
    		}
    	}
    	return true;
    }

    Основная здесь функция, предназначенная для вызова, - IsConflict(Visit a, Visit b)
    Она должна проверять, пересекаются ли меджу собой два промежутка времени.
    Вот такая проверка со сложностью O(n*n) , где n - кол-во минут в промежутках времени.

    kasitan, 18 Сентября 2013

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

    +101

    1. 1
    if( a.GetPixel(i, k).Name.ToString().Substring(0,6)=="ff0404")

    http://www.cyberforum.ru/csharp-net/thread954611.html#post5057105

    Qwertiy, 15 Сентября 2013

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

    +105

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    if (App.TimerClock != null)
    {
      App.TimerClock.Enabled = false;
      App.TimerClock.Close();
      App.TimerClock.Dispose();
      App.TimerClock = null;
     }

    taburetka, 11 Сентября 2013

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

    +133

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    foreach (var contractBaseViewModel in contractModels)
    {
    	var entity = dbTenderLots.FirstOrDefault(x => x.Uid == contractBaseViewModel.EntityUid);
    	if (entity != null)
    	{
    		contractModels.ForEach(x => x.LotViewUrl = url.Generate<TendersController>(l => l.Lot(entity.Id)));
    	}
    }

    вопрос. какое значение примет LotViewUrl у моделек?

    Silvochka, 09 Сентября 2013

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

    +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
    private static string AddStr(string s1, string s2)
    		{
    			string result;
    			if (s1 == string.Empty)
    			{
    				result = s2;
    			}
    			else
    			{
    				if (s2 == string.Empty)
    				{
    					result = s1;
    				}
    				else
    				{
    					result = s1 + " " + s2;
    				}
    			}
    			return result;
    		}

    Код - бессмысленный и беспощадный

    leon_mz, 06 Сентября 2013

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

    +139

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    if ((ObjectType)value == ObjectType.Undefined)
    {
        return string.Empty;
    }
    {
        return ((ObjectType)value).GetDescriptionAttribute();
    }

    Как будто не хватает чего-то..

    save2love, 03 Сентября 2013

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

    +134

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    Товарищи, недавно у меня была возможность покодить на арестованных сях: синтаксис в принципе 
    не очень сложный, да и возможности широкие. 
    Так вот, у меня возник вопрос: стоит ли учить си-за-решеткой в противовес Delphi 8 (идет под .NET)?
    Дело в том.  что Си для меня язык новый, а с Delphi я более менее знаком. 
    
    Хочу заранее попросить: пожалуйста, никаких споров о преимуществах языков. 
    Вопрос стоит не о том, что лучше,  а о том, сравним ли по возможностям компилятор Delphi 8 .NET с C#.

    Stertor, 01 Сентября 2013

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

    +134

    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
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    97. 97
    98. 98
    public void ConvertCross_2(int ch, string pfile,string NameSheet){
                //Преобразуем КроссТаблицу
                int Div = Convert.ToInt16(comboBox3.Text) - 1;
                string fn = ""; string fn1 = ""; string fn12 = ""; string fn13 = "";
                string fn14 = ""; string fn15 = ""; string fn16 = ""; string fn2 = "";
                string fn3 = "";
                string st = "";
                StreamWriter sw;
                string dirfile = "";
                if (textBox1.Text != ""){
                    dirfile = textBox1.Text + "\\" + pfile + ".csv";
                    if (ch == 1){
                        File.Delete(dirfile);
                    }
                    sw = new StreamWriter(dirfile, true, System.Text.Encoding.UTF8);
                }else{
                    if (ch == 1){
                        File.Delete(openFileDialog1.FileName + ".csv");
                    }
                    sw = new StreamWriter(openFileDialog1.FileName + ".csv", true, System.Text.Encoding.UTF8);
                }
                try{
                    for (int cl = 0; cl < 3 + Div; cl++){
                        fn = "F" + cl;
                        if (cl == 0){
                            st =  fn;
                        }else{
                            st += ";" +  fn ;
                        }
                    }
                    st += ";" +  "Sheets";
                    if (ch == 1){
                        sw.WriteLine(st);
                    }
                    for (int i = 1 + Div; i < dt.Columns.Count; i++){
                       Application.DoEvents();
                        for (int j = 1; j < dt.Rows.Count; j++){
                            fn1 = dt.Rows[j][0].ToString();
                            if (fn1 == "") fn1 = " ";
                            else fn1 = fn1.Replace("\n", "").Replace("\r", "").Replace(";", "SemicoloN");
                            if (Div >= 1){
                                fn12 = dt.Rows[j][1].ToString();
                                if (fn1 == "") fn12 = " ";
                                else fn12 = fn12.Replace("\n", "").Replace("\r", "").Replace(";", "SemicoloN");
                            }
                            if (Div >= 2){
                                fn13 = dt.Rows[j][2].ToString();
                                if (fn13 == "") fn13 = " ";
                                else fn13 = fn13.Replace("\n", "").Replace("\r", "").Replace(";", "SemicoloN");
                            }
                            if (Div >= 3){
                                fn14 = dt.Rows[j][3].ToString();
                                if (fn14 == "") fn14 = " ";
                                else fn14 = fn14.Replace("\n", "").Replace("\r", "").Replace(";", "SemicoloN");
                            }
                            if (Div >= 4){
                                fn15 = dt.Rows[j][4].ToString();
                                if (fn15 == "") fn15 = " ";
                                else fn15 = fn15.Replace("\n", "").Replace("\r", "").Replace(";", "SemicoloN");
                            }
                            if (Div == 5){
                                fn16 = dt.Rows[j][5].ToString();
                                if (fn16 == "") fn16 = " ";
                                else fn16 = fn16.Replace("\n", "").Replace("\r", "").Replace(";", "SemicoloN");
                            }
                            fn2 = dt.Rows[0][i].ToString();
                            if (fn2 == "") fn2 = " ";
                            else fn2 = fn2.Replace("\n", "").Replace("\r", "").Replace(";", "SemicoloN");
                            fn3 = dt.Rows[j][i].ToString();
                            if (fn2 == "") fn2 = " ";
                            else fn2 = fn2.Replace("\n", "").Replace("\r", "").Replace(";", "SemicoloN");
                            st =  fn1  + ";";
                            if (Div >= 1){
                                st = st +  fn12  + ";";
                            }
                            if (Div >= 2){
                                st = st +  fn13  + ";";
                            }
                            if (Div >= 3){
                                st = st +  fn14 + ";";
                            }
                            if (Div >= 4){
                                st = st + fn15 + ";";
                            }
                            if (Div >= 5){
                                st = st + fn16 + ";";
                            }
                            st = st +  fn2 +  ";" + fn3 + ";\"" + NameSheet.Replace("\n", "").Replace("\r", "").Replace(";", "SemicoloN");
                            if (fn3.Trim()!=""){
                               sw.WriteLine(st);
                            }
                        }
                    }
                    sw.Close();            
                }finally{
                    sw.Close();
            }
    }

    кто бы мог подумать, что так можно сделать unpivot

    Lokich, 30 Августа 2013

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