Feed
Google+
Contact
XING
LinkedIn
Twitter
ICQ
meebo.com

Enterprise Library - Configuration Application Block

by Roland Schumacher alias GENiALi 6. Juni 2006 -- 443 words  -- 1 mal gelesen

Jedes mal, wenn ich die EL brauche, muss ich nach dem Syntax suchen.
(Na ja. Langsam kenn ich den/die Syntax schon.) :-)

Ich habe mir jedenfalls die ersten paar Webcasts von Microsoft zum Thema Enterprise Library
angeschaut. Dabei machte ich mir auch ein paar Notizen.
Da ich diese immer im Zugriff haben will kommt mir mein Blog natürlich sehr gelegen.

Diese "Anleitung" erhebt keinen Anspruch auf Vollständigkeit, Richtigkeit und
Korrektheit. Wenn wer was findet das nicht stimmt, dass man besser machen könnte
oder einfach sonst was, der soll sich bei mir melden. Ich werde es dann korrigieren.

Zudem will ich alles nur in kurzen Kommentaren machen. Ich gehe davon aus,
dass man C# kann, dass man die EL selber Kompilieren kann und einwenig
Ahnung von der Geschichte hat. :-)

Hier also meine Stichworte zum Configuration Application Block.

Allgemein
1. Die Klassen müssen Serialisierbar ([Serializable]) sein. Auch die Typen die enthalten sind (Z.b.: ArrayList).
2. Die Einstellungen für die Enterprise Library werden in der app.config b.z.w. der web.config gespeichert.
3. Die Konfiguration wird mit dem Tool "Enterprise Library Configuration" gemacht.
3.1 Bei Encrypt kann man das Verschlüsseln der zu serialisierenden Daten einschalten.
Bei Name gibt man den Sektionsname an. Das wird dann wichtig beim Selektieren von Daten.
(Settings settings = ConfigurationManager.GetConfiguration("EditorSettings") as Settings;)
EditorSettings.jpg
3.2 In die Datei, die im Feld FileName definiert wird, werden die Dateien serialisiert.
Dort drin sind also die Einstellungen in form einer XML Datei. Den Rest kann man so sein lassen.
EditorSettingsFileStore.jpg
3.3 Im Transformer stellt man nichts ein. Das kann man so stehen lassen.
 EditorSettingsTransformer.jpg
Code
1. Gelesen werden die Daten wie folgt.
Settings settings = ConfigurationManager.GetConfiguration("EditorSettings") as Settings;
2. Geschrieben werden die Daten wie folgt.
ConfigurationManager.WriteConfiguration("EditorSettings", settings);
3. Da die Daten in einem Cache gehalten werden kann man diesen auch löschen.
Als Standart werden die Daten 15 sec. im Cache gehalten.
Alles löschen:
ConfigurationManager.ClearSingletonSectionCache();
Nur eine bestimmte Sektion löschen:
ConfigurationManager.ClearSingletonSectionCache("EditorSettings");
4. Zudem gibt es noch ein Event das einem mitteilen kann ob sich die Konfiguration in der Datei geändert hat.
ConfigurationManager.ConfigurationChanged += new ConfigurationChangedEventHandler(OnConfigurationChanged);
In dieser Methode, die vom Event aufgerufen wird, muss dann einfach mit GetConfiguration alles geladen werden.
Schon hat man die aktuellen Daten.
5. Im Webcast wurde eine allgemeine Methode gemacht die verantwortlich für das Laden der Settings war.
Die hiess schlicht public void LoadConfig(){//Daten laden}. Die kann man natürlich von überall her aufrufen.
Da das ConfigurationChanged Event aber in einem anderen Thread läuft muss man die Methode Invoked aufrufen.
Ich hoffe die Schreibweise stimmt.
this.Invoke(new MethodInvoker(this.LoadConfig)); ACHTUNG !! Diesen Code habe ich mir notiert und nirgends sonst gefunden.
Ich hoffe das stimmt so.

Abschluss
So, ich hoffe es sind alle Klarheiten beseitig. Wenn es jemandem geholfen haben sollte,
dann denkt doch bitte an meinen Bedankomat. :-)

Tags:

Entwicklung

Kommentar schreiben

  Country flag

biuquote
  • Kommentar
  • Live Vorschau
Loading

Statistik

Gesamte Posts: 1025
Dieses Jahr: 7
Diesen Monat: 1
Diese Woche: 0
Kommentare: 929
Total Bewertungen: 91
Ø Bewertung: 4,42
Meisten Kommentare
Google+ ... (28)
Beste Ø Bewertung
Tastaturlayout von Visual Stud ... (5)
Meiste Bewertungen
Windows 7 und die ersten Erfah ... (5)

Buttons

Stop Spam Harvesters, Join Project Honey Pot Benutzerprofil von GENiALi connection speed test network connection Bloggeramt.de Slug.ch Blog Verzeichnis und Blog Webkatalog Schumacher Roland Seitwert Valid XHTML 1.0 Transitional

writing