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

    −1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    public void SaveModels(IEnumerable<Activity> models)
     {
                if (models == null && models.Count() == 0) return;
                // step 1/3: remove empty models
                var empty = models.Where(m => !m.ForecastedValue.HasValue && !m.ActualValue.HasValue).ToList();
                if (empty != null)
                {
                    models = models.Except(empty);
                }
               .....
    }

    Зачем такая конструкция, если можно просто
    models = models.Where(m => m.ForecastedValue.HasValue && m.ActualValue.HasValue).ToList()
    К тому же проверка на null бесполезна - ни Where, ни ToList не могут вернуть null. Даже если в коллекции ничего не останется.

    Запостил: sans, 08 Февраля 2016

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

    • ни Where, ни ToList не могут вернуть null

      public static List<Activity> ToList(this MyEnumerable<Activity> models)
      {
      if(models == null) return null;
      }
      Ответить
    • >>Зачем такая конструкция, если можно просто..
      ..убиться об стену?
      Ответить
    • см. первую строку
      if (models == null && models.Count() == 0) return;

      вот тут уж точно вопрос - зачем такая конструкция?
      Ответить
      • скорее всего там имелось ввиду ИЛИ
        Ответить
      • чтобы при SaveModels(null);
        упасть с эксепшеном
        Ответить

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