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

    0

    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
    string json = "{" +
                  "\"path\": " + EscapeForJson(path) + "," +
                  "\"cmd\": " + EscapeForJson(cmd) + "," +
                  "\"config\": {" +
                  "\"defaultPerms\": " + defaultPerms.ToString() + ", " +
                  "\"defaultCompPerms\": " + defaultCompPerms.ToString() + ", " +
                  "\"rules\": [";
    foreach (var rule in rules)
    {
        json += "{" +
                "\"path\": " + EscapeForJson(rule.path) + "," +
                "\"perms\": " + rule.perms.ToString() +
                "},";
    }
    
    if (rules.Length != 0)
    {
        json = json.Remove(json.Length - 1);  // remove last ','
    }
    json += "]}}";

    gost, 24 Ноября 2018

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

    +1

    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
    boolean breakIt = true;
            while (true) {
            breakIt = true;
            try {
                // write your code here
            } catch (Exception e) {
                if (e.getMessage().contains("element is not attached")) {
                    breakIt = false;
                }
            }
            if (breakIt) {
                break;
            }
    
        }

    1. Кто этим уебанам дает полномочия "помогать" на stackoverflow?
    2. Что за 4 уебана апнули этот ответ?

    https://stackoverflow.com/a/31061804

    Lorip1971, 22 Ноября 2018

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

    −4

    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
    using System;
    using System.Collections.Generic;
    using System.Text;
    
    namespace hard_porno_s_CSharpom
    {
        class Program
        {
    
            public struct Food
            {
                public string name;
                public int cost;
            }
    
            public static List<Food> first_bludo = new List<Food>();
            public static List<Food> garnir = new List<Food>();
            public static List<Food> salat = new List<Food>();
            public static List<Food> drink = new List<Food>();
    
            public static List<Food> itogo_list = new List<Food>();
    
            public static void AddFood(string name, int cost, int category)
            {
                Food food = new Food()
                {
                    name = name,
                    cost = cost,
                };
    
                if (category == 1)
                {
                    first_bludo.Add(food);
                }
    
                if (category == 2)
                {
                    garnir.Add(food);
                }
    
                if (category == 3)
                {
                    salat.Add(food);
                }
    
                if (category == 4)
                {
                    drink.Add(food);
                }
            }
    
            static void Main(string[] args)
            {
                AddFood("Суп-говна (Sub-Zero)", 100, 1);
                AddFood("Суп из ляшки жирухи", 140, 1);
                AddFood("Суп из супа из ляшки жирухи", 200,1);
                AddFood("Суп из харчков", 100, 1);
    
                AddFood("Кабачки с конским хуём и залупой гориллы", 100, 2);
                AddFood("Красная икра с тушкой полевой мышки", 130, 2);
    
                AddFood("Салат 'Самилье-залупе'", 120, 3);
                AddFood("Салат 'Князь'", 150, 3);
                AddFood("Салат 'Блевотский'", 140, 3);
    
                AddFood("Пиво 'Гоп-стоп'", 110, 4);
                AddFood("Александро-пивандрий", 155, 4);
                AddFood("Пиво 'Бомжатское'", 44, 4);
    
                AddFood("Пиво 'Семейное'", 74, 3);
    
    
                //показываем меню категорий
                ShowCategory();
            }
    
            static void ShowCategory()
            {
                Console.ForegroundColor = ConsoleColor.Cyan;
                Console.WriteLine("\nЧто будете мисье залупе?");
    
                Console.WriteLine("1. Первое");
    
                Console.WriteLine("2. Гарнирчик");
    
                Console.WriteLine("3. Салатик");
    
                Console.WriteLine("4. Напиток");
    
                Console.WriteLine("9. Показать чек");
    
                int select = int.Parse(Console.ReadLine());

    salavan73, 18 Ноября 2018

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

    −106

    1. 1
    //Правой рукой дрочу, левой жопу щекочу

    salavan73, 18 Ноября 2018

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

    +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
    15. 15
    16. 16
    17. 17
    internal class DeviceState
    {
        internal string PrimaryState { get; private set; }
        private HashSet<string> _multiplieStates;
    
        // много кода...
    
        internal string[] GetStates()
        {
            string states = PrimaryState;
            if (_multiplieStates.Count > 0)
            {
                states += '|' + string.Join("|", _multiplieStates);
            };
            return states.Split('|');
        }
    }

    spectrezero, 11 Ноября 2018

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

    +1

    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
    public class TransactionRequestViewModel
    {
            public string X_login { get; set; }
    
            public double X_amount { get; set; }
    
            public int X_fp_sequence { get; set; }
    
            public int X_fp_timestamp { get; set; }
    
            public string X_fp_hash { get; set; }
    
            public string X_show_form { get; set; }
    
            public string X_receipt_link_method { get; set; }
    
            public string X_receipt_link_text { get; set; }
    
            public string X_receipt_link_url { get; set; }
    
            public string X_currency_code { get; set; }
    
            public string X_line_item { get; set; }
    }

    Этот "Х" добавляет +80 к читаемости.

    Moses, 19 Октября 2018

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

    0

    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
    public void r_mesg(Message msg, string text)
            {
                bot.SendTextMessageAsync(msg.Chat.Id, text, replyToMessageId: msg.MessageId);
            }
            public void mesg_md(ChatId chatId, string text)
            {
                try { bot.SendTextMessageAsync(chatId, text, ParseMode.Markdown); }
                catch { mesg(chatId, text); }
            }
            public void mesg_html(ChatId chatId, string text)
            {
                try { bot.SendTextMessageAsync(chatId, text, ParseMode.Html); }
                catch { mesg(chatId, text); }
            }
            public void r_mesg_md(Message msg, string text)
            {
                try { bot.SendTextMessageAsync(msg.Chat.Id, text, ParseMode.Markdown, replyToMessageId: msg.MessageId); }
                catch { r_mesg(msg, text); }
            }
            public void r_mesg_html(Message msg, string text)
            {
                try { bot.SendTextMessageAsync(msg.Chat.Id, text, ParseMode.Html, replyToMessageId: msg.MessageId); }
                catch { r_mesg(msg, text); }
            }
    
            public void pic(ChatId chatId, string file)
            {
                bot.SendPhotoAsync(chatId, file);
            }
            public void r_pic(Message msg, string file)
            {
                bot.SendPhotoAsync(msg.Chat.Id, file, replyToMessageId: msg.MessageId);
            }
            public void pic_t(ChatId chatId, string file, string text)
            {
                bot.SendPhotoAsync(chatId, file, caption: text);
            }
            public void pic_t_md(ChatId chatId, string file, string text)
            {
                try { bot.SendPhotoAsync(chatId, file, caption: text, parseMode: ParseMode.Markdown); }
                catch { pic_t(chatId, file, text); }
            }
            public void pic_t_html(ChatId chatId, string file, string text)
            {
                try { bot.SendPhotoAsync(chatId, file, caption: text, parseMode: ParseMode.Html); }
                catch { pic_t(chatId, file, text); }
            }
            public void r_pic_t(Message msg, string file, string text)
            {
                bot.SendPhotoAsync(msg.Chat.Id, file, 
                    caption: text, replyToMessageId: msg.MessageId);
            }
            public void r_pic_t_md(Message msg, string file, string text)
            {
                try {
                    bot.SendPhotoAsync(msg.Chat.Id, file, 
                        caption: text, parseMode: ParseMode.Markdown,
                        replyToMessageId: msg.MessageId);
                }
                catch { r_pic_t(msg, file, text); }
            }
            public void r_pic_t_html(Message msg, string file, string text)
            {
                try {
                    bot.SendPhotoAsync(msg.Chat.Id, file,
                        caption: text, parseMode: ParseMode.Html,
                        replyToMessageId: msg.MessageId);
                }
                catch { r_pic_t(msg, file, text); }
            }

    Jint и скриптовые команды для бота. Ну не удержался и скинул эту хуету

    UND85D, 12 Октября 2018

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

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    private static readonly ConcurrentDictionary<Expression, object> CachedFunctions;
    
    public static Func<TEntity, bool> AsFunc<TEntity>(this object entity, Expression<Func<TEntity, bool>> expr)
        where TEntity : class, IEntity
    {
        //@see http://sergeyteplyakov.blogspot.ru/2015/06/lazy-trick-with-concurrentdictionary.html
        return (Func<TEntity, bool>)CachedFunctions.GetOrAdd(expr, id => new Lazy<object>(
            () => CachedFunctions.GetOrAdd(id, expr.Compile())));
    }

    Вот так хорошая идея ломается о кривую реализацию. Вместо того чтобы сохранить в кэш требуемый тип, сохраняем туда Lazy, возвращающий себя же :)

    leff, 11 Октября 2018

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

    +1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    public GlobalSetting ReadGlobalSettingById(string id)
    {
    	int totalItems;
    	var globalSettings = ReadGlobalSettings(PageSetting.All, out totalItems);
    
    	return globalSettings.FirstOrDefault(e => e.GlobalSettingID == id);
    }

    Инновационный алгоритм считывания сущности по ID:
    1) считываем ВСЕ записи из базы в память;
    2) в памяти находим сущность с нужным ID;
    3) все остальное пусть Garbage Collector подберет;
    4) удобно же, не правда ли?)

    Moses, 11 Октября 2018

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

    +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
    15. 15
    private int SortWObyAD(WorkOrderShort wo1, WorkOrderShort wo2)
    {
    	if (wo1.AD == wo2.AD)
    	{
    		return 0;
    	}
    	else if (wo1.AD > wo2.AD)
    	{
    		return 1;
    	}
    	else
    	{
    		return -1;
    	}
    }

    Сразу 2 достоинства:
    1) абсолютно не понятно, что такое AD;
    2) ах да, все это можно было бы заменить одной строкой "return wo1.AD - wo2.AD", т.к. все это будет использоваться в одной из стандартных функций сортировки

    Moses, 11 Октября 2018

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