public FileResult DownloadFile(int id, int tipo = 0)
        {
            byte[] fichero = new byte[] { };
            var f = db.Fichero.Find(id);
            if (tipo == 0)
            {
                fichero = Convert.FromBase64String(f.Datos);
            }
            else if (tipo==1)
            {
                fichero = f.DatosBinarios;
            }
            else if (tipo==2)
            {
                var cu = ConfigurationManager.AppSettings["cuentaAzureStorage"];
                var cl = ConfigurationManager.AppSettings["claveAzureStorage"];
                var co = ConfigurationManager.AppSettings["contenedorAzureStorage"];

                var sto = new AzureStorage(cu, cl, co);

                fichero = sto.RecuperarFicheroContenedor(f.Datos, co);
            }
            return File(fichero, MediaTypeNames.Application.Octet, f.Nombre);
        }
        public FileResult DownloadFileB64(int id, int tipo = 0)
        {
            byte[] fichero = new byte[] {};
            var busqueda = db.Fichero.Find(id);
            if (tipo == 0)
            {
                fichero = Convert.FromBase64String(busqueda.Datos);
            }
            else if(tipo==1)
            {
                fichero = busqueda.DatosBinarios;
            }
            else if (tipo==2)
            {
                var cuentaAz = ConfigurationManager.AppSettings["cuentaAzureStorage"];
                var claveAz = ConfigurationManager.AppSettings["claveAzureStorage"];
                var contAz = ConfigurationManager.AppSettings["contenedorAzureStorage"];

                var azure = new AzureStorage(cuentaAz, claveAz, contAz);

                fichero = azure.RecuperarFicheroContenedor(busqueda.Datos, contAz);
            }
            return File(fichero, MediaTypeNames.Application.Octet, busqueda.Nombre);
        }
        public ActionResult GetBase64Azure(String nombre)
        {
            var cuentaAz = ConfigurationManager.AppSettings["cuentaAzureStorage"];
            var claveAz = ConfigurationManager.AppSettings["claveAzureStorage"];
            var contAz = ConfigurationManager.AppSettings["contenedorAzureStorage"];

            var storage = new AzureStorage(cuentaAz, claveAz, contAz);
            var data = storage.RecuperarFicheroContenedor(nombre, contAz);
            var f = new FicheroBase64() { Contenido = Convert.ToBase64String(data) };
            return View(f);
        }
        public ActionResult Subida(Fichero model, HttpPostedFileBase fichero)
        {
            if (model.Tipo == "interno")
            {
                var nombreFichero = SubirFicheros.GuardarFicheroDisco(fichero, Server);
                if (nombreFichero != null)
                {
                    model.Datos = nombreFichero;
                    db.Fichero.Add(model);
                    try
                    {
                        db.SaveChanges();
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine(e);
                    }
                }
            }
            else if (model.Tipo == "base64")
            {
                var data = SubirFicheros.ToBinario(fichero);
                if (data != null)
                {
                    model.Datos = Convert.ToBase64String(data);
                    model.Nombre = fichero.FileName;
                    db.Fichero.Add(model);
                    try
                    {
                        db.SaveChanges();
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine(e);
                    }
                }
            }
            else if (model.Tipo == "binario")
            {
                var datab = SubirFicheros.ToBinario(fichero);
                if (datab != null)
                {
                    model.Datos = "";
                    model.DatosBinarios = datab;
                    model.Nombre = fichero.FileName;
                    db.Fichero.Add(model);
                    try
                    {
                        db.SaveChanges();
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine(e);
                    }
                }
            }
            else if (model.Tipo == "azure")
            {
                var cuentaAz = ConfigurationManager.AppSettings["cuentaAzureStorage"];
                var claveAz = ConfigurationManager.AppSettings["claveAzureStorage"];
                var contAz = ConfigurationManager.AppSettings["contenedorAzureStorage"];

                var azure=new AzureStorage(cuentaAz,claveAz,contAz);

                var guid = Guid.NewGuid();
                var extension = fichero.FileName.Substring(fichero.FileName.LastIndexOf("."));

                azure.SubirFichero(fichero.InputStream,guid+extension);

                model.Datos = guid + extension;
                model.Nombre = fichero.FileName;

                db.Fichero.Add(model);
                try
                {
                    db.SaveChanges();
                }
                catch (Exception e)
                {
                    Console.WriteLine(e);
                }
            }
            return RedirectToAction("Index");
        }