//HttpPostedFileBase: Envia información del fichero //(nombre, encoding, tamaño, string transformado, etc) 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")); }
public ActionResult Subida(Ficheros model, HttpPostedFileBase fichero) { if (model.tipo == "interno") { var n = GestionarFicheros.GuardarFicheroDisco(fichero, Server); if (n != null) { model.datos = n; db.Ficheros.Add(model); try { db.SaveChanges(); } catch (Exception e) { Console.WriteLine(e); } } } else if (model.tipo == "base64") { var data = GestionarFicheros.ToBinario(fichero); if (data != null) { model.datos = Convert.ToBase64String(data); model.nombre = fichero.FileName; db.Ficheros.Add(model); try { db.SaveChanges(); } catch (Exception e) { Console.WriteLine(e); } } } else if (model.tipo == "binario") { var datab = GestionarFicheros.ToBinario(fichero); if (datab != null) { model.nombre = fichero.FileName; model.datosb = datab; model.datos = ""; db.Ficheros.Add(model); try { db.SaveChanges(); } catch (Exception e) { Console.WriteLine(e); } } } else if (model.tipo == "azure") { var cu = ConfigurationManager.AppSettings["AccountnameAzureStorage"]; var cl = ConfigurationManager.AppSettings["PasswordAzureStorage"]; var co = ConfigurationManager.AppSettings["ContainerAzureStorage"]; var az = new AzureStorageUtil(cu, cl, co); var n = Guid.NewGuid(); var ext = fichero.FileName.Substring(fichero.FileName.LastIndexOf(".")); az.SubirFichero(fichero.InputStream, n + ext); model.datos = n + ext; model.nombre = fichero.FileName; db.Ficheros.Add(model); db.SaveChanges(); } return(RedirectToAction("Index")); }