Vantaggi di AppSettingsReader di Net vs ConfigurationManager per le impostazioni di configurazione dell'applicazione di lettura

StackOverflow https://stackoverflow.com/questions/3497768

Domanda

C'è una differenza sostanziale tra la classe AppSettingsReader e il membro AppSettings della classe ConfigurationManager in Net 3.5?

Sto costruendo qualche codice legacy e uno sviluppatore precedente utilizzato AppSettingsReader.GetValue (), mentre io sono più inclini a usare ConfigurationManager.AppSettings.Get ().

Guardando gli interni, AppSettingReader sembra essere più typesafe, ma il suo utilizzo sembra un po 'più dettagliato. Se le impostazioni applicazioni Mi sto il recupero sono ben noti e abbastanza statico, c'è qualche vantaggio di utilizzare AppSettingsReader?

È stato utile?

Soluzione

Non proprio. Internamente AppSettingsReader appena usato le ConfigurationManager.AppSettings.

Non è fondamentalmente solo un po 'di peluria attorno controllando che esiste, verificando che ciò che sta accadendo è ok etc.

Una cosa è però che sarà un'eccezione quando non v'è nessun elemento nei 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 }));
       }

Credo che la maggior parte delle persone basta usare ConfigurationManager, ma la vera risposta è 'wahtever galleggia la vostra barca'.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top