Hola gente, perdon por la molestia pero la verdad es que hace dias que trato de encontrar solucion a este problema y no puedo.
Les explico, tengo una bd access la cual leo con un gridview, en este inserte una nueva columna con un fileupload, el cual solo aparese cuando edito algun registro.
La orden de cargar el archivo que necesita el fileupload lo ejecuto desde el mismo boton de actualizar del gridview.
Lo que necesito es que al ejecutar esta accion se guarde en la bd le path del archivo cargado en el registro al cual se le hizo la modificacion.
Es decir: mi fileupload garda los archivos y esa direccion relativa la tengo que guardar en la bd para que despues pueda llamar la imagen de cada registro.
aqui les dejo los codigos
Código:
Partial Class Default2
Inherits System.Web.UI.Page
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
Dim index As Integer = Integer.Parse(DirectCast(sender, Button).CommandArgument)
Dim file As FileUpload = DirectCast(GridView1.Rows(index).FindControl("FileUpload1"), FileUpload)
If file IsNot Nothing Then
If file.HasFile Then
file.SaveAs(Server.MapPath("~") & "\Upload\" & System.IO.Path.GetFileName(file.PostedFile.FileName))
'pense en hacer algo asi y despues meter "direccion" dentro del registro, pero no se como
'Dim direccion As String = "\Upload\" + file.PostedFile.FileName
End If
End If
Código:
<asp:AccessDataSource ID="AccessDataSource1" runat="server"
DataFile="~/Base de datos.mdb"
DeleteCommand="DELETE FROM [alquileres] WHERE [Id_alquileres] = ?"
InsertCommand="INSERT INTO [alquileres] ([Id_alquileres], [a_supcub], [a_supdescub], [a_ant], [a_valor], [a_imagen], [a_id_tipo], [a_vista], [a_observacion], [a_id_provincia], [a_localidad]) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"
SelectCommand="SELECT alquileres.Id_alquileres, alquileres.a_supcub, alquileres.a_supdescub, alquileres.a_ant, alquileres.a_valor, alquileres.a_imagen, alquileres.a_id_tipo, alquileres.a_vista, alquileres.a_observacion, alquileres.a_id_provincia, alquileres.a_localidad, tipo.descripcion FROM (alquileres INNER JOIN tipo ON alquileres.a_id_tipo = tipo.Id_tipo)"
UpdateCommand="UPDATE [alquileres] SET [a_supcub] = ?, [a_supdescub] = ?, [a_ant] = ?, [a_valor] = ?, [a_imagen] = ?, [a_id_tipo] = ?, [a_vista] = ?, [a_observacion] = ?, [a_id_provincia] = ?, [a_localidad] = ? WHERE [Id_alquileres] = ?">
<DeleteParameters>
<asp:Parameter Name="Id_alquileres" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="a_supcub" Type="String" />
<asp:Parameter Name="a_supdescub" Type="String" />
<asp:Parameter Name="a_ant" Type="String" />
<asp:Parameter Name="a_valor" Type="String" />
<asp:Parameter Name="a_imagen" Type="String" />
<asp:Parameter Name="a_id_tipo" Type="Int32" />
<asp:Parameter Name="a_vista" Type="Boolean" />
<asp:Parameter Name="a_observacion" Type="String" />
<asp:Parameter Name="a_id_provincia" Type="Int32" />
<asp:Parameter Name="a_localidad" Type="String" />
<asp:Parameter Name="Id_alquileres" Type="Int32" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="Id_alquileres" Type="Int32" />
<asp:Parameter Name="a_supcub" Type="String" />
<asp:Parameter Name="a_supdescub" Type="String" />
<asp:Parameter Name="a_ant" Type="String" />
<asp:Parameter Name="a_valor" Type="String" />
<asp:Parameter Name="a_imagen" Type="String" />
<asp:Parameter Name="a_id_tipo" Type="Int32" />
<asp:Parameter Name="a_vista" Type="Boolean" />
<asp:Parameter Name="a_observacion" Type="String" />
<asp:Parameter Name="a_id_provincia" Type="Int32" />
<asp:Parameter Name="a_localidad" Type="String" />
</InsertParameters>
</asp:AccessDataSource>
</p>
<p>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataSourceID="AccessDataSource1" AllowPaging="True"
DataKeyNames="Id_alquileres">
<Columns>
<asp:TemplateField ShowHeader="False">
<EditItemTemplate>
<asp:Button ID="Button1" runat="server" CausesValidation="True" CommandArgument='<%# Container.DataItemIndex %>'
CommandName="Update" onclick="Button1_Click" Text="Actualizar"></asp:Button>
<asp:LinkButton ID="LinkButton2" runat="server" CausesValidation="False"
CommandName="Cancel" Text="Cancelar"></asp:LinkButton>
</EditItemTemplate>
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False"
CommandName="Edit" Text="Editar"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Id_alquileres" HeaderText="Id_alquileres"
InsertVisible="False" SortExpression="Id_alquileres" ReadOnly="True" />
<asp:BoundField DataField="a_supcub" HeaderText="a_supcub"
SortExpression="a_supcub" />
<asp:BoundField DataField="a_supdescub" HeaderText="a_supdescub"
SortExpression="a_supdescub" />
<asp:BoundField DataField="a_ant" HeaderText="a_ant" SortExpression="a_ant" />
<asp:BoundField DataField="a_valor" HeaderText="a_valor"
SortExpression="a_valor" />
<asp:BoundField DataField="a_id_imagen" HeaderText="a_id_imagen"
SortExpression="a_id_imagen" />
<asp:TemplateField HeaderText="a_id_tipo" SortExpression="a_id_tipo">
<EditItemTemplate>
<asp:DropDownList ID="DropDownList1" runat="server"
DataSourceID="AccessDataSource1" DataTextField="descripcion"
DataValueField="Id_tipo" Text='<%# Bind("a_id_tipo") %>'>
</asp:DropDownList>
<asp:AccessDataSource ID="AccessDataSource1" runat="server"
DataFile="~/Base de datos.mdb" SelectCommand="SELECT * FROM [tipo]">
</asp:AccessDataSource>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Bind("a_id_tipo") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:CheckBoxField DataField="a_vista" HeaderText="a_vista"
SortExpression="a_vista" />
<asp:BoundField DataField="a_observacion" HeaderText="a_observacion"
SortExpression="a_observacion" />
<asp:BoundField DataField="a_id_provincia" HeaderText="a_id_provincia"
SortExpression="a_id_provincia" />
<asp:BoundField DataField="a_localidad" HeaderText="a_localidad"
SortExpression="a_localidad" />
<asp:TemplateField>
<EditItemTemplate>
<asp:FileUpload ID="FileUpload1" runat="server" />
</EditItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
desde ya muchas gracias!!!!