9 Stimmen

Vorteile des AppSettingsReader von .Net gegenüber dem ConfigurationManager zum Lesen von Anwendungskonfigurationseinstellungen

Gibt es einen wesentlichen Unterschied zwischen der AppSettingsReader-Klasse und dem AppSettings-Mitglied der ConfigurationManager-Klasse in .Net 3.5?

Ich baue gerade einen älteren Code aus, und ein früherer Entwickler hat AppSettingsReader.GetValue() verwendet, während ich eher dazu neige, ConfigurationManager.AppSettings.Get() zu verwenden.

Wenn man sich die Interna ansieht, scheint AppSettingReader typsicherer zu sein, aber seine Verwendung scheint etwas ausführlicher zu sein. Wenn die App-Einstellungen, die ich abrufe, bekannt und ziemlich statisch sind, gibt es irgendeinen Vorteil, AppSettingsReader zu verwenden?

7voto

Dave Walker Punkte 3418

Nicht wirklich. Intern verwendet AppSettingsReader nur die ConfigurationManager.AppSettings.

Im Grunde genommen geht es nur darum, zu überprüfen, ob es existiert, ob das, was vor sich geht, in Ordnung ist usw.

Eine Sache ist jedoch, dass es eine Ausnahme werfen, wenn es kein Element in der AppSettings

    // From CTOR
    this.map = ConfigurationManager.AppSettings;

    ....
    public object GetValue(string key, Type type)

       ...

       string item = this.map[key];
       if (item == null)
       {
           throw new InvalidOperationException(SR.GetString("AppSettingsReaderNoKey", new object[] { key }));
       }

Ich denke, dass die meisten Leute einfach ConfigurationManager verwenden werden, aber die wirkliche Antwort lautet: "Was auch immer Ihnen Spaß macht".

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X