Ciao Ragazzi!

Stavolta ho un problema un pochino complesso:

In una pagina del sito di un cliente, ho messo dei campi che vanno a salvare i dati in un DB. In due dei campi però salvo il percorso e il nome dell'immagine associata al campo stesso (questi dati li prendo da un fileUpload).

Poi, per la cancellazione o modifica di questi campi (letti direttamente dal db) mi appoggio ad un datalist.

Fino a qui tutto funziona a dovere, tranne solo per una cosa:

In che modo posso cancellare l'immagine associata al campo dalla directory??

Le immagini vengono salvate in 'public/imgMaxi/nomefoto.jpg' e in 'pubic/imgMini/nomefoto.jpg'

So che forse devo usare un File.Delete ma il problema è che non so bene come....!

Ad esempio, questo è il codice che uso per la cancellazion dei record:
    protected void Cancella(object sender, EventArgs e)
    {
        LinkButton b = (LinkButton)sender;
        DbCatalogo.DeleteCommand = string.Format("DELETE FROM [Catalogo] WHERE [id] = {0}", b.CommandArgument);
        DbCatalogo.Delete();
}


Ed è qui dentro che vorrei inserire l'istruzione...

Grazie mille!


Modificato da ricardo78 il 04 febbraio 2009 21.27 -

Creazione Siti Vicenza
Posizionamento Siti - SEO
Ciao Ric@rdo,
Per eliminare un file dal disco utilizza:
System.IO.File.Delete(nome del file);

Per conoscere il path assoluto del file devi usare:
Server.MapPath(url relativo);

Ciaoo
Garze per la risposta!

Ma il metdo che mi hai spiegato, lo posso associare a un db? Cioe una cosa tipo

 System.IO.File.Delete(prendo dal Db nome e percorso); ??


o c'è un altro modo?

grazie ancora per la risp!!!

Creazione Siti Vicenza
Posizionamento Siti - SEO
Hai solo una immagine per catalogo? Se si potresti chiamare l'immagine come il codice del catalogo, e, visto i sorgenti che hai postato alla proprietà commandArgument del linkbutton hai bindato il codice del catalogo. Potresti usare url fisso come da te riportato /imgMaxi/codicecatalogo.jpg. In fase di eliminazione metti tutto sotto transazione in un try catch elimini prima il file, poi esegui il delete dal db e poi committi. Altrimenti se non hai la possibilità di chiamare l'immagine con il suo nome potresti bindare più campi al commandargument del linkbutton separandoli con il ;. Poi nella procedura di delete gli slpitti per ricomporre il nome del file.
Purtroppo non è una sola immagine per tutto il catalogo, ma ogni record ha a sua immagine

e per ogni record cancellato andrebbe cancellata anche l'immagine associata...

come fare?

grazie ancora....

Creazione Siti Vicenza
Posizionamento Siti - SEO
3.939 messaggi dal 28 gennaio 2003
perchè non fai la cosa in due fasi? per esempio,

leggo da database il l'indirizzo delle immagini da cancellare, magari con datatable o repeater.
Con questo indirizzo relativo, ricavo il percorso fisico e le cancello.

Dopo cancello il record esattamente con l'sql che hai messo.
grazie Pietro, ma tradotto in codice (c#) in che modo lo posso realizzare?

Creazione Siti Vicenza
Posizionamento Siti - SEO
ragazzi c'è qualcuno che mi puo dare una mano? al momento non ci sono ancora riuscito...

Creazione Siti Vicenza
Posizionamento Siti - SEO

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.