Vorab folgendes Codebeispiel:
Konfigurationseigenschaften sind Instanzen der generischen Klasse gip.core.autocomponent.ACPropertyConfigValue<T> .
- Deklarieren Sie ein privates Feld von diesem Typ.
- Deklarieren Sie eine öffentliche Eigenschaft mit getter und setter, die den Zugriff auf die ACPropertyConfigValue-Instanz kapselt. In der getter- und setter-Methode lesen oder setzen sie die ValueT-Eigenschaft.
- Verwenden Sie die ACPropertyConfig-Attributklasse, um die Konfigurationseigenschaft dem iPlus-Typsystem bekannt zu geben.
- Instanzieren sie die ACPropertyConfigValue-Klasse im Konstruktor oder der überschriebenen ACInit()-Methode ihrer von ACComponent abgeleiteten Klasse. Im Konstruktor der ACPropertyConfigValue-Klasse übergeben Sie im ersten Parameter den this-Pointer der ACComponent. Im zweiten Parameter geben Sie exakt den gleichen Namen an wie Sie Ihre Konfigurationseigenschaft im C#-Code deklariert haben (Schritt 2). Der dritte Parameter ist der Default-Wert. Bitte beachten Sie dass der Default-Wert erst beim erstmaligen Zugriff auf die ValueT-Eigenschaft gesetzt wird und somit ein neuer Eintrag in die ACConfig-Tabelle gemacht wird.
Wichtig: Caching!
Bitte bedenken Sie, dass Config-Werte gecached sind. Bei mehrmaligen Zugriffen auf ValueT erfolgt keine frische Datenbankabfrage. Rufen Sie explizit die Methode ACComponent.ResetConfigValuesCache() auf, um den Cache zurückzusetzen und ein erneutes Laden von der Datenbank zu forcieren.