DB Zugangsdaten aus File "Global" speichern.



  • Neuer Tag, neues Problem.
    Mein Programm zieht seine DB Zugangsdaten aus einem ini File.

    Inhalt:
    Zeile1: DBServer=localhost
    Zeile2: DBUser=User
    Zeile3: DBPassWd=x123

    Releanter Inhalt der Methode:

    string DBServerFromFile = c_textdatei.ReadLine(@"ini\System.ini",1);
                    string DBServerFromFilepattern = "(DBServername=\\.?)";
                    DBServerFromFile = Regex.Replace(DBServerFromFile, DBServerFromFilepattern, String.Empty);
    

    Jedes Mal wenn im Programm nun die Methode zum öffnen der DB aufgerufen wird, wird ja nun auf die Ini zugegriffen. Das ist doch Kacke.
    Wie speichere ich meine Daten aus dem Inifile irgendwo Global (Böse!) so in der Art ab.

    Angenommen meine Variablen die auch aus der DB geholt habe sind:
    DBServername
    DBInstanzname
    DBName
    DBUser
    DBPassWd

    Wie lese ich die wohin , sodass ich immer wieder auf diese Variablen zugreifen kann.
    Ich entschuldige mich vorab für die stupide frage, aber ich lerne noch.
    Ein Codeschnipsel zum Verständnis wäre toll.

    Danke MaPe


  • Administrator

    Erstell eine DBConnectionRegistry oder ähnliches mit statischen Methoden. Z.b. könntest du ganz billig sowas verwenden:

    class DBConnectionData
    {
      public static DBConnectionData Default { get; set; }
    
      public string Server { get; set; }
      public string User { get; set; }
      public string Password { get; set; }
    
      public DBConnectionData(string server, string user, string password)
      {
        this.Server = server;
        this.User = user;
        this.Password = password;
      }
    }
    
    // irgendwo beim Aufstarten des Programmes:
    public void ReadDBConnection()
    {
      string server = // ...
      string user = // ...
      string password = // ...
    
      DBConnectionData.Default = new DBConnectionData(server, user, password);
    }
    

    Gibt aber eben noch andere Möglichkeiten. Kommt auch ein wenig auf die weiteren Anforderungen drauf an. Mir ist nicht so ganz klar, wo du hier grosse Probleme siehst.

    Grüssli



  • Hallo,

    mal eine Frage: Warum speicherst du dir die Daten nicht in einer Settingsklasse? Die wird von MS schon frei Haus gereitgestellt und ist im Projekt konfigurierbar.

    grüße


Log in to reply