Kann mir bitte jemand den Unterschied zwischen den Abschnitten AppSettings und ApplicationSettings in der App.Config-Datei erklären. Warum gibt es zwei verschiedene Abschnitte, die scheinbar dasselbe tun?Was ist der Unterschied zwischen den Abschnitten ApplicationSettings und AppSettings?
Antwort
Ich glaube, dass die <appsettings/>
Sammlung in Ihrem app.config/web.config können Sie Einstellungen speichern, in Schlüssel-Wert-Paare, und wird durch die System.Configuration API zugegriffen wird, wie folgt:
string setting = System.Configuration.ConfigurationManager.AppSettings["settingName"];
Einstellungen können nur als String-Werte gespeichert und abgerufen werden.
Sie können auch über System.Configuration.ConfigurationSettings zugegriffen werden, aber dieser Weg ist veraltet.
Die <ApplicationSettings/>
Sammlung in Ihrer Konfigurationsdatei speichert Ihre Einstellungen in einer stark typisierten Weise und ermöglicht Ihnen auch, auf diese Einstellungen in einer stark typisierten Weise zuzugreifen. VS erstellt automatisch Wrapper-Klassen für Sie in der Datei settings.settings im Ordner Properties Ihres Projekts. Um eine Einstellungsdatei zu Ihrem Projekt hinzuzufügen, klicken Sie mit der rechten Maustaste auf Ihr Projekt und klicken Sie auf Eigenschaften, dann öffnen Sie die Registerkarte Einstellungen. Klicken Sie dann auf den Link, um eine neue Einstellungsdatei hinzuzufügen. VS wird automatisch eine für Sie erstellen. So einfach ist das.
Sie greifen in der Regel Ihre Einstellungen wie folgt:
MyProjectName.Properties.Settings.Default.SettingName
Beachten Sie den Unterschied in, wie die beiden Sammlungen zugegriffen wird.
Die zweite (nicht veraltete) Möglichkeit zum Speichern von Einstellungen ist der bessere Weg und bietet viel Flexibilität und Leistung. Es braucht etwas lernen - aber es ist die Mühe wert.
"Die obige Vorgehensweise ist veraltet." - System.Configuration.ConfigurationSettings.AppSettings ist veraltet, wird jedoch durch System.Configuration.ConfigurationManager.AppSettings ersetzt. Die Verwendung des Konfigurationsabschnitts
Ahh richtig! Danke für diese Klarstellung. – Calanus
Beinahe verpasst @ Joes Nachtrag. Es wurde dem ursprünglichen Post für Personen hinzugefügt, die nicht alle Kommentare lesen. –
http://kevinskorner.net/blog/post/2008/03/27/applicationSettings-vs-appSettings.aspx
Anwendungseinstellungen geben uns mehr Kontrolle und am wichtigsten, intelliscence.
Dieser Link ist tot, aber es ist auf Archive.org verfügbar: http://web.archive.org/web/20100721004740/http://kevinskorner.net/blog/post/2008 /03/27/applicationSettings-vs-appSettings.aspx – Nick
Es ist mit Rückwärtskompatibilität zu tun, die wir alle lieben. ApplicationSettings ist das neuere Konstrukt.
Verwenden Sie die neueren Klassen ConfigurationManager und WebConfigurationManager, um Ihre Einstellungen jetzt zu erhalten, und Sie benötigen dazu eine Referenz, also System.configuration und nicht System.Configuration :).
An einem Punkt wurde es ein bisschen albern, nicht wahr.
- 1. Unterschied zwischen Locks, Mutex und kritischen Abschnitten
- 2. Was ist der Unterschied zwischen `==` und `ist`?
- 3. Was ist der Unterschied zwischen:.! und: r !?
- 4. Was ist der Unterschied zwischen `&` und `ref`?
- 5. Was ist der Unterschied zwischen $ (...) und `...`
- 6. Was ist der Unterschied zwischen Difftime und '-'?
- 7. Was ist der Unterschied zwischen ";" und "GO" in T-SQL?
- 8. Was ist der Unterschied zwischen den Keywords `fun` und` function`?
- 9. Was ist der Unterschied zwischen den Methoden Html.Partial und Html.Action?
- 10. Was ist der Unterschied zwischen den Überlaufeigenschaften `overlay` und` scroll`?
- 11. Was ist der Unterschied zwischen den Ereignissen Control.Enter und Control.GotFocus?
- 12. Was ist der Unterschied zwischen den Funktionsaufrufen "mail()" und "@mail()"?
- 13. Was ist der Unterschied zwischen den NSMage und UIImage?
- 14. Was ist der Unterschied zwischen den isPresent und isDisplayed Methoden
- 15. Was ist der Unterschied zwischen den Pseudoelementen :: after und :: backdrop?
- 16. Was ist der Unterschied zwischen den Parametern Default und [Optional]?
- 17. Ruby: Was ist der Unterschied zwischen den Vergleichen: "||" und "oder"
- 18. Was ist der Unterschied zwischen Monad.Reader und den (->) Monaden?
- 19. Was ist der Unterschied zwischen den Begriffen "Quelldatei" und "Übersetzungseinheit"?
- 20. Was ist der Unterschied zwischen den Keywords "data" und "type"?
- 21. Was ist der Unterschied zwischen den Klick- und Tippereignissen?
- 22. Was ist der Unterschied zwischen den Funktionen VarIsEmpty und VarIsEmptyParam?
- 23. Was ist der Unterschied zwischen den Umgebungsvariablen `USER` und` USERNAME`?
- 24. Was ist der Unterschied zwischen $ und $$?
- 25. Was ist der Unterschied zwischen Verilog! und ~?
- 26. was ist der Unterschied zwischen [[], []] und [[]] * 2
- 27. Was ist der Unterschied zwischen/* ... */und/** ... */
- 28. Was ist der Unterschied zwischen .Equals und ==
- 29. Was ist der Unterschied zwischen "$^N" und "$ +"?
- 30. Was ist der Unterschied zwischen + = und = +?
Wo sehen Sie "Anwendungseinstellungen"? Ich glaube nicht, dass dies ein gültiger Konfigurationsabschnitt ist. Könnten Sie ein Beispiel veröffentlichen? – alanquillin
Sorry, ich meine ApplicationSettings, nicht Application Settings – Calanus