none
DetailsView supprimer l'entrée ainsi qu'une photo associée RRS feed

  • Discussion générale

  • Bonjour,

    Je tente de récupérer le nom de l'image afin de la supprimer en même temps que son entrée en base:

    erreur retournée accès refusé au dossier sur delete.file.

    protected void detailsview1_ItemCommand(Object sender, DetailsViewCommandEventArgs e)
            {
                if (e.CommandName == "Delete")
                {
    
                    DetailsViewRow row = DetailsView1.Rows[1];
                    string phototest = row.Cells[1].Text;
    
    
                    string FilePath = "C:/Users/jean-baptiste/source/repos/GRATIS/GRATIS/Content/PHOTOS/" + phototest + "";
                    FileInfo fi = new FileInfo(FilePath);
                    if (fi.IsReadOnly)
                        fi.IsReadOnly = false;
                    Label2.Text = FilePath;
                    File.Delete(FilePath);
    
                    
                }
            }
    <asp:DetailsView ID="DetailsView1" runat="server" AutoGenerateRows="False" DataKeyNames="Id_photo" DataSourceID="BiensPhotos" Height="50px" Width="125px" AllowPaging="True" OnItemCommand="detailsview1_ItemCommand">
            <Fields>
                <asp:BoundField DataField="Id_photo" HeaderText="Id_photo" InsertVisible="False" ReadOnly="True" SortExpression="Id_photo" />
                <asp:TemplateField HeaderText="nom_photo" SortExpression="nom_photo">
                    <EditItemTemplate>
                        <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("nom_photo") %>'></asp:TextBox>
                    </EditItemTemplate>
                    <InsertItemTemplate>
                        <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("nom_photo") %>'></asp:TextBox>
                    </InsertItemTemplate>
                    <ItemTemplate>
                        <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("nom_photo") %>'></asp:TextBox>
                        <asp:Image ID="Image1" runat="server" Height="122px" ImageUrl='<%# Eval("nom_photo","../Content/PHOTOS/{0}") %>' />
                    </ItemTemplate>
                </asp:TemplateField>
                
                <asp:BoundField DataField="id_bien" HeaderText="id_bien" SortExpression="id_bien" Visible="False" />
                
                <asp:CommandField ShowDeleteButton="True" />
                
                
                
            </Fields>
        </asp:DetailsView>

    J'ai bien les droits sur le dossier Content/PHOTOS/

    Merci à quiconque à la solution!

    jeudi 26 octobre 2017 14:05

Toutes les réponses