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

 

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

Μετά το κλείσιμο του Προγράμματος χάνω όλες τις εγγραφές απο το MDF αρχείο

Îåêßíçóå áðü ôï ìÝëïò g1024. Τελευταία δημοσίευση από το μέλος g1024 στις 18-10-2009, 13:34. Υπάρχουν 6 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  17-10-2009, 16:41 54572

    Μετά το κλείσιμο του Προγράμματος χάνω όλες τις εγγραφές απο το MDF αρχείο

    Καλησπέρα σας.Γράφω πρώτη φορά στο Forum και καλώς σας βρήκα!

    Εχω ξεκινήσει ένα Project σε C# με ADO.NET και έχω κάνει Binding τα Controls με ετοιμα εργαλεία που δίνει ή C#.
    Όλα δειχνούν να λειτουργουν ΟΚ κανω νέες εγραφές κτλ αλλά μόλις κλέινω το Project και το ξανα ξεκινάω χάνω όλα τα δεδομένα

    Τι γινεται ; δεν καταλαβαίνω. Μπορεί κάποιος να μου λύσει την απορεία;

    (υπόψη οτι δημιουργησα νέα Βάση δεδομένων απο το add items Service-Based DataBase)

  •  17-10-2009, 17:42 54573 σε απάντηση της 54572

    Απ: Μετά το κλείσιμο του Προγράμματος χάνω όλες τις εγγραφές απο το MDF αρχείο

    Αν κάνεις δεξί κλικ στο mdf και επιλέξεις properties θα δεις ότι στην επιλογή 'Copy to Output directory' έχει 'Copy Always'. Αυτή σημαίνει ότι η βάση σου αντιγράφεται στον φάκελο bin\debug μαζί με το εκτελέσιμό σου κάθε φορά που την εκτελείς μέσα από το VS. Οι αλλαγές που κάνει το πρόγραμμά σου σε runtime γράφονται στο αντίγραφο αυτό. Όταν σταματήσεις την εκτέλεση και την ξαναρχίσεις ένα νέο αντίγραφο αντιγράφεται, με αποτέλεσμα οι προηγούμενες αλλαγές να χάνονται.

    Αν επιλέξεις 'Copy if newer' τότε αυτή η αντιγραφή θα γίνεται μόνο όταν κάνεις αλλαγές στο πρωτότυπο αρχείο mdf. Οπότε θα χάνεις τις αλλαγές σου μόνο τότε.

    Αν δεν το θέλεις ούτε αυτό τότε επέλεξε 'Do not copy' και άλλαξε το connection string σου έτσι ώστε κατά το runtime να χρησιμοποιεί την πρωτότυπη βάση και όχι το αντίγραφο.


    Dimitris Papadimitriou
    Software Development Professional
    dotNETZone.gr News

    Οι απαντήσεις παρέχονται για συγκεκριμένες ερωτήσεις και χωρίς καμιά εγγύηση. Διαβάστε επίσης τους όρους χρήσης.
  •  17-10-2009, 23:20 54574 σε απάντηση της 54573

    Απ: Μετά το κλείσιμο του Προγράμματος χάνω όλες τις εγγραφές απο το MDF αρχείο

    Ησουν απόλυτα σαφής.

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

    Κάτι τελευταίο . όταν θα κάνω διανομή το πρόγραμμα μου σε πελάτες πρέπει να σετάρω κάτι στον SQL server τους?.ή μόνο το αρχείο mdf αρκεί;.(μέχρι τώρα ήξερα για τα κλασικά SQL connection strings πρώτη φορά δημιουργώ mdf file και να δουλέυω πάνω του χώρις να το κάνω Attach)

    Και πάλι σ'ευχαριστώ εκ'των προτέρων!!!!.Smile

  •  17-10-2009, 23:31 54575 σε απάντηση της 54574

    Απ: Μετά το κλείσιμο του Προγράμματος χάνω όλες τις εγγραφές απο το MDF αρχείο

    Η όλη λογική λέγεται User Instance (γι αυτό και το User Instance=true που έχεις στο connection string). Υποστηρίζεται μόνο από τον Sql server express και όχι από τις άλλες εκδόσεις (standard κλπ.). Επίσης πρέπει η λειτουργία αυτή να είναι ενεργοποιημένη. Αυτό γίνεται εκτελώντας την εντολή exec sp_configure 'user instances enabled', 1 στον sql server. Νομίζω όμως ότι by default είναι ενεργοποιημένη.


    Dimitris Papadimitriou
    Software Development Professional
    dotNETZone.gr News

    Οι απαντήσεις παρέχονται για συγκεκριμένες ερωτήσεις και χωρίς καμιά εγγύηση. Διαβάστε επίσης τους όρους χρήσης.
  •  18-10-2009, 00:00 54576 σε απάντηση της 54575

    Απ: Μετά το κλείσιμο του Προγράμματος χάνω όλες τις εγγραφές απο το MDF αρχείο

    Με λίγα λόγια άν ο Client που θα εγκαταστήσω την εφαρμογή δεν έχει SQL 2005,8 express θα έχω πρόβλημα!!.
    Τι θα μου πρότεινες να Κάνω για να είμαι ευέλικτος (Γιατι σίγουρα θα πέσω και σε εγκαταστάσεις όπου θα υπάρχει SQL εγκατ/νος είτε 2000,είτε 2005 ή 2008).;

    (Μπορεί να συνυπάρχουν 2 SQL Server μαζι στο ίδιο μηχάνημα π.χ SQL 2000 & SQL EXPRESS 2005;)

    Σε ευχαριστώ (Είσαι ταχύτατος!!!!!)

     

  •  18-10-2009, 09:53 54578 σε απάντηση της 54576

    Απ: Μετά το κλείσιμο του Προγράμματος χάνω όλες τις εγγραφές απο το MDF αρχείο

    Επίσης, ένα θέμα με τα user instances είναι ότι δεν επιτρέπουν remote logins στη βάση, δηλαδή η βάση είναι μόνο για τοπική χρήση από την εφαρμογή, δεν θα μπορούν να την δουν άλλα PCs στο δίκτυο. Η καλύτερη λύση είναι να κάνεις deploy τη βάση μέσω του installer. O installer που δίνει το visual studio δεν το υποστηρίζει out of the box, ωστόσο μπορείς να γράψεις διάφορα custom actions και να τον κάνεις να μπορεί (πχ δες εδώ http://msdn.microsoft.com/en-us/magazine/cc163919.aspx κι εδώ http://www.codeproject.com/KB/install/sqlscriptinstall.aspx) Εναλλακτικά, υπάρχουν άλλοι installers που το υποστηρίζουν ωστόσο θα πρέπει να βάλεις το χέρι στην τσέπη.


    Vir prudens non contra ventum mingit
  •  18-10-2009, 13:34 54582 σε απάντηση της 54578

    Απ: Μετά το κλείσιμο του Προγράμματος χάνω όλες τις εγγραφές απο το MDF αρχείο

    Σας ευχαριστώ πολύ για τις απαντήσεις σας!.

     

Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems