This looks redundant? The foreach will already do nothing if !errors.Any()