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

    +133

    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
    try
                {
                    using (var context = new vbEntities())
                    {                   
                        
                        var DBF = new DBF();
                        var dt = DBF.GetAll(@"C:\Users\.........\Documents\BNKSEEK.DBF");
    
                        int i = 0;
                        progressBar1.Maximum = dt.Rows.Count;
    
                        foreach (DataRow dr in dt.Rows)
                        {
                            var row = new Bank();
                            row.BIK = dr["RKC"].ToString();
                            row.CityName = dr["NNP"].ToString();
                            row.Address = dr["ADR"].ToString();
                            row.Name = dr["NAMEP"].ToString();
                            row.KS = dr["KSNP"].ToString();
                            row.Phone = dr["TELEF"].ToString();
                            row.OKPO = dr["OKPO"].ToString();  
                            context.Bank.Add(row);
                            progressBar1.Value = i++;
                        }
                        context.SaveChanges();
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }

    Запостил: orozov, 18 Марта 2014

    Комментарии (13) RSS

    • Зачем повсеместно использовать var, как минимум читабельность кода падает, а как максимум тратится время на определение типа на этапе компиляции, зачем? Лень писать чтоли. Var придумали для LINQ потому как бывают случаи когда не ясно какой тип вернется из запроса и там ему самое место. А в коде везде писать var, это извините меня, полный идиотизм.
      Ответить
      • Замечание по теме, спасибо, в коде на сомом деле не везде стоял var, решил поэкспериментировать с этим типом вот собственно и понапихал.
        Ответить
      • >как минимум читабельность кода падает, а как максимум тратится время на определение типа на этапе компиляции
        Это сарказм такой?
        Ответить
        • Кто то не читает мануалов.
          http://msdn.microsoft.com/ru-ru/library/bb383973.aspx
          Ответить
          • Кто-то читает их жопой, не осмысливая.
            String errorMessage = new MemoryStream();

            Компилер сравнит типы String и MemoryStream - разные, но MemoryStream наследуется от Stream. Хмм, Stream наследуется от MarshalByRefObject и реализует IDisposable, тоже не String итд.
            С var компилируется явно быстрее. Имя переменной говорит больше чем тип, если в команде нет дегенерата, именующего переменные a1, a2, qwe. Никто же не будет умножать customerId на shopId, если они интовые. С var имя переменной всегда с одним смещением от начала строки записано, читать легче.
            int index = 0;
            Dictionary<string, WeakReference<MySuperClass>> mySuperClassCache = new Dictionary<string, WeakReference<MySuperClass>>();
            MemoryStream stream = new MemoryStream();
            List<Guid> userIds = GetUserIdList();

            против
            var index = 0;
            var mySuperClassCache = new Dictionary<string, WeakReference<MySuperClass>>();
            var stream = new MemoryStream();
            var userIds = GetUserIdList();
            Ответить
      • >А в коде везде писать var, это извините меня, полный идиотизм.
        Лучше писать что-то другое, а потом quick fix? Ваши недоиде не показывают реальный тип var?
        Ответить
        • Лучше квикФикс, чем потом оверфлоу где-нить получить.
          Ответить
        • http://habrahabr.ru/post/39231/
          советую почитать коментарии
          Ответить
          • Какие конкретно? И что в них интересного?
            Ответить
          • Прикольная статейска. Особенно понравилася рекомедация автора к переходу на аналог венгерской нотации:
            кстати, если вы читали эту статью, то поняли бы что в связке с var переменную следует называть currentItemTextValue
            Так долго с ней многие боролить :)
            Ответить
      • > тратится время на определение типа на этапе компиляции
        Ты так говоришь, как-будто без var компилятор этого определения типа не делает :) Один хер же будет выводить тип и сверять с типом, который стоит слева.
        Ответить

    Добавить комментарий