263 messaggi dal 08 aprile 2009
Avrei necessità di eliminare file temporanei alla chiusura della sessione.
Ho provato con Session_End in Global.asax, ma (ovviamente) non fa niente perchè scatenato quando la sessione è chiusa e quindi non riesce più a comunicare con il server.

Dove posso intervenire?
Puoi usare i file temporanei di windows... oppure prova a dargli un nome ad hoc e far girare una console application schedulata che fa pulizia (che ne dici?)

Ormai programmano tutti... ma la professionalità appartiene a pochi
263 messaggi dal 08 aprile 2009
Il fatto è che sono file zip generati per dei download fatti dagli utenti. Siccome non posso legarmi a un orario perchè alcuni utenti (commerciali) lo usano anche dall'Australia, pensavo di eseguire una pulizia dei file creati durante una sessione. Solo che non so a cosa attaccarmi.
Mi basterebbe intercettare il completamento di un download, ma non so se è possibile
Che intendi con "non riesce più a comunicare con il server" ?

Ricorda che anche se non hai a disposizione un HttpContext valido, puoi sempre usare la classe HttpRuntime che ti espone i metodi per costruire il path lato server delle varie cartelle della tua applicazione.
Così dovresti essere in grado di raggiungere la cartella con i tuoi files temporanei ed eliminarli senza problemi :)

Maggiori dettagli qui:
http://msdn.microsoft.com/it-it/library/system.web.httpruntime.aspx

Davide Guida
Technical Architect @ Razorfish Healthware
http://davideguida.altervista.org
263 messaggi dal 08 aprile 2009
Ok, questo in parte mi aiuta. Il mio problema però rimane. Il direttorio in cui salvo i file temporanei ha un nome che si basa su variabili di sessione che vengono inizializzate sulla base dell'utente di login. Quando la sessione si chiude io perdo il valore di queste variabili e non so più come fare. Dovrei cambiare la logica con cui costruisco il nome della cartella in cui salvo i file, tenendo però presente che deve essere unica per sessione, più che altro perchè quando vado a cancellare i files temporanei non vorrei cancellare anche roba di altri utenti
potresti sempre usare l'id dell'utente come nome della cartella...

Davide Guida
Technical Architect @ Razorfish Healthware
http://davideguida.altervista.org
263 messaggi dal 08 aprile 2009
Certo, però quando la sessione si chiude l'ID dell'utente non l'ho più (o mi sbaglio)
Gianni Albori
Giben International Spa

Per rispondermi

gianni.albori[AT]giben.it

<END-CUT>





Questo messaggio di posta elettronica contiene informazioni di carattere confidenziale rivolte esclusivamente al destinatario sopra indicato. E' vietato l'uso, la diffusione, distribuzione o riproduzione del messaggio intero o di parte di esso a chiunque non ne sia il diretto destinatario. Nel caso aveste ricevuto questo messaggio di posta elettronica per errore, siete pregati di segnalarlo immediatamente al mittente e distruggere quanto ricevuto (compresi i file allegati) senza farne copia. Qualsiasi utilizzo non autorizzato del contenuto di questo messaggio costituisce violazione dell'obbligo di non prendere cognizione della corrispondenza tra altri soggetti, salvo più grave illecito, ed espone il responsabile alle relative conseguenze.

Confidentially notice. This e-mail transmission may contain legally privileged and/or confidential information. Please do not read it if you are not the intended recipient(S). Any use, distribution, reproduction or disclosure by any other person is strictly prohibited. If you have received this e-mail in error, please notify the sender and destroy the original transmission and its attachments without reading or saving it in any manner.
in verità intendevo l'id dell'utente nel tuo db, non l'id della sessione. A questo punto suppongo tu non abbia uno strato di persistenza, o mi sbaglio?

Davide Guida
Technical Architect @ Razorfish Healthware
http://davideguida.altervista.org

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.