Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Διαγραφή αρχείου από τον server έπειτα από χρήση της μεθόδου Response.TransmitFile

  •  04-12-2017, 16:54

    Διαγραφή αρχείου από τον server έπειτα από χρήση της μεθόδου Response.TransmitFile

    Καλησπέρα,

    Προσπαθώ να σβήσω ένα αρχείο zip από τον server με χρήση της μεθόδου System.IO.File.Delete κατόπιν χρήσης της ασύγχρονης μεθόδου Response.TransmitFile για μεταφορά του αρχείου στον client μέσω streaming και παίρνω το exception:

    "The process cannot access the file x.zip because it is being used by another process.".

    Για το σβήσιμο του αρχείου χρησιμοποιώ thread που παίρνει ως παράμετρο delegate βασιζόμενος στο Fix του παραδείγματος εδώ: http://improve.dk/response-transmitfile-close-will-kill-your-application/.

    Το περίεργο είναι ότι όταν χρησιμοποιώ για web server τον Cassini του Visual Studio ή τον τοπικό μου IIS δεν λαμβάνω το exception και το αρχείο διαγράφεται κανονικά. Το exception το λαμβάνω από τον IIS στο production περιβάλλον.

    Καμία ιδέα;

    Σας ευχαριστώ.

     

     

    Δημοσίευση στην κατηγορία: ,
Δείτε όλες τις δημοσιεύσεις της Θεματική Ενότητας
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems