public async Task <IActionResult> AgregarNuevaFoto( IFormFile Files, PictureViewModels PictureViewModels) { string NombreImagenInicial = string.Empty; if (Files != null) { if (Files.FileName.Contains(".jpg") || Files.FileName.Contains(".JPEG") || Files.FileName.Contains(".gif") || Files.FileName.Contains(".png") || Files.FileName.Contains(".tif")) { NombreImagenInicial = Files.FileName.Replace(" ", ""); /////// var Insert_Fotos = new PictureViewModels(); if (PictureViewModels != null) { var GetValue = new BEImagen(); var GetValuep = new BEProducto(); GetValue.descripcion = PictureViewModels.descripcionImagen; GetValue.posicionPortada = PictureViewModels.posicionPortada; GetValuep.Descripcion = PictureViewModels.DescripcionProducto; GetValuep.fechaexpiracion = PictureViewModels.fechaexpiracion; GetValuep.fechaproduccion = PictureViewModels.fechaproduccion; GetValuep.Nombre = PictureViewModels.NombreProducto; GetValuep.Precio = PictureViewModels.Precio; GetValuep.Stock = PictureViewModels.Stock; NombreImagenInicial = PictureViewModels.NombreImagen.Replace(" ", "") + Guid.NewGuid().ToString() + NombreImagenInicial; GetValue.Nombre = NombreImagenInicial; Insert_Fotos = _IFotos.Insert_BEFoto(GetValue, GetValuep); PictureViewModels.idfoto = Insert_Fotos.idfoto; PictureViewModels.idproducto = Insert_Fotos.idproducto; PictureViewModels.CantidadDeregistros = Insert_Fotos.CantidadDeregistros; PictureViewModels.NombreImagen = NombreImagenInicial; } // solo guarda si se completo el insert de las entidades var PathToSave = Path.Combine(_IEnviroment.WebRootPath, "images"); if (Files.Length > 0) { if (Insert_Fotos.CantidadDeregistros > 0) { //grabamos la imange en la APP using (var SaveFile = new FileStream(Path.Combine(PathToSave, NombreImagenInicial), FileMode.Create)) { await Files.CopyToAsync(SaveFile); } //Enviamos A La API La imagen SendToApi(Files, NombreImagenInicial, PictureViewModels); } } } } ///////////////// //var file = Request.; return(RedirectToAction("ProductosLista", "Producto")); }
public PictureViewModels Insert_BEFoto(BEImagen BEImagen, BEProducto BEProducto) { PictureViewModels Cantidadregistros = new PictureViewModels(); int cantidadregistro = 0; using (var conexion = new SqlConnection()) { WU.Compras.Publicidad.PE.Wallet.Data.Conecta Conecta = new WU.Compras.Publicidad.PE.Wallet.Data.Conecta(); string Conexion = Conecta.GetConexion().ConnectionString; try { var Parameter = new SqlParameter[13]; Parameter[0] = new SqlParameter("@Nombre", SqlDbType.VarChar, 300) { Value = BEImagen.Nombre }; Parameter[1] = new SqlParameter("@rutafoto", SqlDbType.VarChar, 300) { Value = "" }; Parameter[2] = new SqlParameter("@posicionPortada", SqlDbType.Int) { Value = BEImagen.posicionPortada }; Parameter[3] = new SqlParameter("@descripcion", SqlDbType.VarChar, 500) { Value = BEImagen.descripcion }; Parameter[4] = new SqlParameter("@NombreProducto", SqlDbType.VarChar, 500) { Value = BEProducto.Nombre }; Parameter[5] = new SqlParameter("@DescripcionProducto", SqlDbType.VarChar, 600) { Value = BEProducto.Descripcion }; Parameter[6] = new SqlParameter("@Precio", SqlDbType.Decimal) { Value = BEProducto.Precio }; Parameter[7] = new SqlParameter("@Stock", SqlDbType.Int) { Value = BEProducto.Stock }; Parameter[8] = new SqlParameter("@fechaproduccion", SqlDbType.DateTime) { Value = BEProducto.fechaproduccion }; Parameter[9] = new SqlParameter("@fechaexpiracion", SqlDbType.DateTime) { Value = BEProducto.fechaexpiracion }; Parameter[10] = new SqlParameter("@Error", SqlDbType.Bit) { Direction = ParameterDirection.Output }; Parameter[11] = new SqlParameter("@Respuesta", SqlDbType.NVarChar, 200) { Direction = ParameterDirection.Output }; Parameter[12] = new SqlParameter("@CantidadRegistrado ", SqlDbType.Int) { Direction = ParameterDirection.Output }; using (var read = VE.DataAccess.SqlHelper.ExecuteReader(Conexion, CommandType.StoredProcedure, "dbo.Insert_Foto", Parameter)) { while (read.Read()) { Cantidadregistros.idfoto = Int64.Parse(read.GetInt64(read.GetOrdinal("IdFoto")).ToString()); Cantidadregistros.CantidadDeregistros = Int32.Parse(read.GetInt32(read.GetOrdinal("CantidadRegistrado")).ToString()); Cantidadregistros.idproducto = Int64.Parse(read.GetInt64(read.GetOrdinal("idproducto")).ToString()); } } } catch (Exception ex) { throw ex; } } return(Cantidadregistros); }