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

 

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

Αποθήκευση ενός ConnectionString σε μια μεταβλητή

Îåêßíçóå áðü ôï ìÝëïò takis. Τελευταία δημοσίευση από το μέλος Ηλίας Κεκάκος στις 06-01-2006, 19:57. Υπάρχουν 4 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  19-12-2005, 21:08 8113

    Huh? [:^)] Αποθήκευση ενός ConnectionString σε μια μεταβλητή

    Καλησπέρα σε όλους

    Εχω μια εφαρμογή σε C# με ένα mdi form και καλώ από τα menu συγκεκριμμένες mdichild forms. Η εφαρμογή συνδέεται με sql server. Επειδή to connectionstring είναι δυναμικό, πως θα μπορούσα να το αποθηκεύσω σε μια μεταβλητή και να το καλώ από οποιοδήποτε form.

     

    Ευχαριστώ

     

     

  •  20-12-2005, 10:32 8126 σε απάντηση της 8113

    Απ: Αποθήκευση ενός ConnectionString σε μια μεταβλητή

    Μια απλή (και γρήγορη) πρακτική είναι να το έχεις ως public property του MDI form σου. Τότε από τα mdi child forms μπορείς να βρίσκεις τον γονέα, να τον κάνεις cast στη συγκεκριμένη κλάση του mdi form σου και να πέρνεις το property.
    Αυτό γενικώς δεν είναι και best practice γιατί συγχέεις πολύ την πρόσβαση στη Βάση Δεδομένων με το GUI σου. Πιο σωστό θα ήταν να έχεις μια κλάση (ή ένα layer;) που να κάνει την πρόσβαση στη Βάση Δεδομένων και το οποίο να έχει σε μια μεταβλητή και το Connection String και να έχεις ένα instance αυτής της κλάσης για να κάνεις τη δουλειά σου...
    Στερνή μου γνώση να σε είχα πρώτα...
  •  20-12-2005, 11:56 8129 σε απάντηση της 8126

    Απ: Αποθήκευση ενός ConnectionString σε μια μεταβλητή

     kkara wrote:
    Μια απλή (και γρήγορη) πρακτική είναι να το έχεις ως public property του MDI form σου. Τότε από τα mdi child forms μπορείς να βρίσκεις τον γονέα, να τον κάνεις cast στη συγκεκριμένη κλάση του mdi form σου και να πέρνεις το property.
    Αυτό γενικώς δεν είναι και best practice γιατί συγχέεις πολύ την πρόσβαση στη Βάση Δεδομένων με το GUI σου. Πιο σωστό θα ήταν να έχεις μια κλάση (ή ένα layer;) που να κάνει την πρόσβαση στη Βάση Δεδομένων και το οποίο να έχει σε μια μεταβλητή και το Connection String και να έχεις ένα instance αυτής της κλάσης για να κάνεις τη δουλειά σου...

    Και βέβαια δεν είναι best practice! Eίναι ο ορισμός του quick & dirty και πρέπει να το αποφεύγεις όπως ο διάολος το λιβάνι. Αν θέλεις να φέρνεις data από τη βάση σου, βάλε τις σχετικές λειτουργίες σε διαφορετικές κλάσεις, να μη σου πω assembly. Με τον τρόπο αυτό:

    • Μπορείς να αλλάξεις σε χρόνο 0 το UI σου χωρίς να αγγίξεις τον DB-bound κώδικα.
    • Μπορείς να αλλάξεις το σχήμα της βάσης σου εύκολα.
    • Μπορείς να μεταφέρεις την εφαρμογή σου σε άλλο DBMS χωρίς να πειράξεις το UI.
    • Μπορείς να μετατρέψεις το domain σου σε enterprise components (UIless)
    • κλπ κλπ.

    Προσωπικά θεωρώ πολύ καλή και "καθαρή" τακτική το domain και το UI να βρίσκονται σε διαφορετικές assemblies με καθαρά public interfaces μεταξύ τους, για να σε αποτρέπουν από το να κάνεις μαμουνιές.


    Νατάσα Μανουσοπούλου
  •  20-12-2005, 19:41 8135 σε απάντηση της 8113

    Απ: Αποθήκευση ενός ConnectionString σε μια μεταβλητή

    Ευχαριστώ πολύ για τις απαντήσεις. Προτίμησα να δημιουργήσω ένα assembly και να καλώ από εκεί τo connection string.
  •  06-01-2006, 19:57 8441 σε απάντηση της 8113

    Απ: Αποθήκευση ενός ConnectionString σε μια μεταβλητή

    Υπάρχει κανένα παράδειγμα ενός τέτοιου assembly. Ευχαριστώ
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems