public ActionResult Create(Empresa E)
        {
            if (ModelState.IsValid)
            {
                IRepositorio<Empresa> repo = new EmpresaRepositorio();
                repo.Save(E);

                IRepositorio<Telefono> repositorioTelefono = new TelefonoRepositorio();
                E.Telefonos[0].IdEmpresa = E.IdEmpresa;
                E.Telefonos[0].Tipo = "E";
                repositorioTelefono.Save(E.Telefonos[0]);

                IRepositorio<Contacto> repositorioContacto = new ContactoRepositorio();
                E.Contacto[0].IdEmpresa = E.IdEmpresa;
                E.Contacto[0].Tipo = "E";
                repositorioContacto.Save(E.Contacto[0]);

                foreach (var telefono in E.Contacto[0].ListaTelefonos)
                {
                    telefono.Tipo = "E";
                    telefono.IdContacto = E.Contacto[0].IdContacto;
                    repositorioTelefono.Save(telefono);
                }
                return RedirectToAction("Index");
            }

            // Si llegamos a este punto, es que se ha producido un error y volvemos a mostrar el formulario
            while (E.Contacto[0].ListaTelefonos.Count < 4)
            {
                E.Contacto[0].ListaTelefonos.Add(new Telefono());
            }
            return View(E);
        }
        public ActionResult Create(Empresa E)
        {
            if (ModelState.IsValid)
            {
                IRepositorio<Empresa> repo = new EmpresaRepositorio();
                repo.Save(E);
                return RedirectToAction("Index");
            }

            // Si llegamos a este punto, es que se ha producido un error y volvemos a mostrar el formulario
            return View(E);
        }