protected void EditButton_Click(object sender, EventArgs e) { // Obtener la ruta de la imagen desde la fila seleccionada en el GridView // Supongamos que tienes un GridView llamado GridView1 y la ruta de la imagen está en la primera columna string imagePath = GridView1.SelectedRow.Cells[1].Text; // Mostrar la imagen en el control FileUpload EditFileUpload.FileName = Path.GetFileName(imagePath); } para actualizar protected void UpdateButton_Click(object sender, EventArgs e) { if (EditFileUpload.HasFile) { // Obtener la ruta de la imagen existente desde la fila seleccionada en el GridView string oldImagePath = GridView1.SelectedRow.Cells[1].Text; // Eliminar la imagen existente del servidor File.Delete(Server.MapPath("~/Uploads/" + Path.GetFileName(oldImagePath))); // Guardar la nueva imagen en el servidor string filename = Path.GetFileName(EditFileUpload.FileName); string folderPath = Server.MapPath("~/Uploads/"); string fullPath = folderPath + filename; EditFileUpload.SaveAs(fullPath); // Actualizar la ruta de la imagen en la base de datos // Por ejemplo: ActualizarRutaEnBD(filename); // Actualizar el GridView para reflejar los cambios GridView1.DataBind(); } } using System; using System.Collections.Generic; using System.IO; using System.Web.UI; public partial class _Default : Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { BindGrid(); } } private void BindGrid() { string path = Server.MapPath("~/Carpetas"); // Cambia esta ruta a la ubicación de tus carpetas List folders = new List(); if (Directory.Exists(path)) { string[] folderPaths = Directory.GetDirectories(path); foreach (string folderPath in folderPaths) { folders.Add(new FolderInfo { FolderName = Path.GetFileName(folderPath) }); } } GridView1.DataSource = folders; GridView1.DataBind(); } } public class FolderInfo { public string FolderName { get; set; } } //ddlAreaEjecutora.Items.Clear(); var area = from tt in cc.tAreasEjecutoras join tareas in cc.tActividades on tt.IDAreaEjecutora equals tareas.IDAreaEjecutora where tareas.IDProyecto == int.Parse(ddlAreaEjecutora.SelectedValue) select tt; foreach (var t in area) { ListItem listArea = new ListItem(); listArea = new ListItem(t.Descripcion); ddlAreaEjecutora.Items.Add(listArea); } ddlAreaEjecutora.DataBind(); if (faltaPresupuesto == false) { var consultaAct = from tAct in dcPOA.tActividades where tAct.IDProyecto == IdProyecto && tAct.IDFinanciamiento == IdFuente && tAct.IDAreaEjecutora == idArea select tAct; int IdActividad = 0; int IdAreaE = 0; foreach (var act in consultaAct) { IdActividad = int.Parse(Session["IdActividad"].ToString()); IdAreaE = act.IDAreaEjecutora; } tClienteCombustibles tClienteComb = new tClienteCombustibles(); tClienteComb.IdProyecto = int.Parse(Session["IdProyecto"].ToString()); tClienteComb.IDActividades = IdActividad; tClienteComb.IDAreaEjecutora = int.Parse(Session["IdAreaEjecutora"].ToString()); tClienteComb.IDTipoCombustible = int.Parse(ddlCombustible.SelectedValue); tClienteComb.IDMes = int.Parse(ddlMes.SelectedValue); tClienteComb.Distancia = decimal.Parse(txtKM.Text); tClienteComb.Litros = decimal.Parse(txtLitros.Text); tClienteComb.Costo = decimal.Parse(txtCosto.Text); tClienteComb.Destino = txtDestino.Text; tClienteComb.CantidadSalidas = int.Parse(txtCantSalida.Text); tClienteComb.CostoTotal = decimal.Parse(txtCostoTotal.Text); tClienteComb.LitrosTotales = decimal.Parse(txtLitrosTotales.Text); dcPOA.tClienteCombustibles.InsertOnSubmit(tClienteComb); dcPOA.SubmitChanges(); this.limpiarTxt(); ClientScript.RegisterClientScriptBlock(this.GetType(), "K", "swal('Guardado','Registro Guardado Correctamente','success')", true); } string variableTipo = Request.QueryString["Tipo"]; string variableMenu = Request.QueryString["Menu"]; if (variableTipo == "2020" && variableMenu == "Evaluación del desempeño de los programas y Políticas públicas") { //string carpetaVirtual = "~/informes/2020/Indicadores" + variableTipo; string rutaFisica = Server.MapPath("~/informes/2020/Indicadores/"); DirectoryInfo directorio = new DirectoryInfo(rutaFisica); FileInfo[] archivos = directorio.GetFiles(); DataTable dtArchivos = new DataTable(); dtArchivos.Columns.Add("Archivo"); dtArchivos.Columns.Add("Ruta del Archivo"); dtArchivos.Columns.Add("Variable"); foreach (FileInfo archivo in archivos) { DataRow fila = dtArchivos.NewRow(); fila["Archivo"] = archivo.Name.Replace("6.- informeIndicadoresTacticos Ene-Mar", "1er. Trimestre ENE-MAR 2020").Replace("12.- informeGuardanIndicadoresTacticos Abr-Jun", "2do. Trimestre ABR-JUN 2020").Replace("Indicadores Tacticos Jul-Sep", "3er. Trimestre JUL-SEP 2020").Replace("indicadores Tacticos Oct-Dic", "4to. Trimestre OCT-DIC 2020"); fila["Ruta del Archivo"] = rutaFisica; fila["Variable"] = variableTipo; if (variableMenu == "Evaluación del desempeño de los programas y Políticas públicas") { if (!archivo.Name.Contains("Evaluación del desempeño de los programas y Políticas públicas" + variableMenu + ".pdf")) { dtArchivos.Rows.Add(fila); } } //if (variableMenu == "Programa Anual de Evaluación") //{ // if (archivo.Name.Contains("Programa Anual de Evaluación" + variableMenu + ".pdf")) // { // dtArchivos.Rows.Add(fila); // } //} } gvArchivos.DataSource = dtArchivos; gvArchivos.DataBind(); } protected void LlenarGridEvaluacionalDesempeño() { string variableTipo = Request.QueryString["Tipo"]; string variableMenu = Request.QueryString["Menu"]; if (variableTipo == "2020" && variableMenu == "Evaluación del desempeño de los programas y Políticas públicas") { //string carpetaVirtual = "~/informes/2020/Indicadores" + variableTipo; string rutaFisica = Server.MapPath("~/informes/2020/Indicadores/"); DirectoryInfo directorio = new DirectoryInfo(rutaFisica); FileInfo[] archivos = directorio.GetFiles(); DataTable dtArchivos = new DataTable(); dtArchivos.Columns.Add("Archivo"); dtArchivos.Columns.Add("Ruta del Archivo"); dtArchivos.Columns.Add("Variable"); foreach (FileInfo archivo in archivos) { DataRow fila = dtArchivos.NewRow(); fila["Archivo"] = archivo.Name.Replace("6.- informeIndicadoresTacticos Ene-Mar", "1er. Trimestre ENE-MAR 2020").Replace("12.- informeGuardanIndicadoresTacticos Abr-Jun", "2do. Trimestre ABR-JUN 2020").Replace("Indicadores Tacticos Jul-Sep", "3er. Trimestre JUL-SEP 2020").Replace("indicadores Tacticos Oct-Dic", "4to. Trimestre OCT-DIC 2020"); fila["Ruta del Archivo"] = rutaFisica; fila["Variable"] = variableTipo; if (variableMenu == "Evaluación del desempeño de los programas y Políticas públicas") { if (!archivo.Name.Contains("Evaluación del desempeño de los programas y Políticas públicas" + variableMenu + ".pdf")) { dtArchivos.Rows.Add(fila); } } //if (variableMenu == "Programa Anual de Evaluación") //{ // if (archivo.Name.Contains("Programa Anual de Evaluación" + variableMenu + ".pdf")) // { // dtArchivos.Rows.Add(fila); // } //} } gvArchivos.DataSource = dtArchivos; gvArchivos.DataBind(); } }