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

 

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

Backup εργαλείο για website

  •  03-12-2008, 10:34

    Backup εργαλείο για website

    Καλημέρα στην παρέα! Θα ήθελα τη γνώμη σας για τη βιβλιοθήκη SharpZipib. Έχει αναφερθεί η βιβλιοθήκη σε άλλες ερωτήσεις οπότε είπα να ρωτήσω.

    Χρησιμοποιώ τη βιβλιοθήκη για να φτιάξω ένα εργαλείο backup για μία ιστοσελίδα. Το backup το πέρνει ο πελάτης μέσα από ένα web interface και το .zip αρχείο κατεβαίνει αμέσως μόλις φτιαχτεί. Ο κώδικας που έφτιαξα, με βοήθεια από το forum είναι ο ακόλουθος:

    myZip = ZipFile.Create(curZipFile.FullName)
    For Each _File As String In myFiles
       myZip.BeginUpdate()
       myZip.NameTransform = New ZipNameTransform(_RootPath)
       myZip.Add(FileName)
       myZip.CommitUpdate()
    Next
    myZip.Close()

    Το πρόβλημα μου είναι ότι όταν ο συνολικός αριθμός των αρχείων είναι πάνω από 500-600 αρχίζει η διαδικασία να γίνεται πολύ αργά. Αν δεν χρησιμοποιήσω την .CommitUpdate() μετά από κάθε .Add(FileName) έχω αποτελέσματα πολύ πιο γρήγορα αλλά το .zip αρχείο είναι κατεστραμμένο. Από όσο διάβασα στο forum, δεν χρειάζεται η .CommitUpdate() μετά από κάθε .Add() αλλά μία φορά στο τέλος. Άρα μάλλον είναι κάποιο bug το οποίο δεν έχουν λύσει ακόμα.

    Οι ερωτήσεις μου:
    Ποιος είναι ο σωστός τρόπος χρήσης των BeginUpdate(), CommitUpdate() συναρτήσεων;
    Αν τελικά αυτή η λύση δεν αποδώσει, υπάρχει κάποια άλλη λύση για να κάνω backup;


    Τάσος Καραγιάννης

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