Die web.config bei der Installation eines Modules verändern

Je nach Modul gibt es schon mal die Anforderung, dass neue Einträge in die web.config geschrieben werden müssen. Dieses kann man entweder im SourceCode erledigen oder aber die Änderungen in dem DNN Modul Manifest / Definitionsdatei (meinmodule.dnn) definieren. Verfügbar ist das ab der Version 5 von DotNetNuke. Um das zu nutzen, muss man in der Manifest-Datei folgendes hinzufügen:

<component type="Config">
  <config>
    <configFile>web.config</configFile>
    <install>
      <configuration>
        <nodes>
            .....
        </nodes>
      </configuration>
    </install>
    <uninstall>
      <configuration>
        <nodes />
      </configuration>
    </uninstall>
  </config>
</component>
Wie man sieht gibt es zwei Bereiche. Der Bereich <install> wird während der Installation und der Bereich <uninstall> wird be der Deinstallation von dem DNN Modul ausgeführt.

Innerhalb des Tags <nodes> können dann die entsprechenden Einträge hinzugefügt werden. Hier ein Beispiel womit ein HttpHandler hinzugefügt wird:
<node path="/configuration/system.web/httpHandlers" action="update" 
key="path" collision="overwrite"> <add verb="*" path="myhandler.axd" validate="false"
type="
DNN.Module.Shop.MyHandler, DNN.Module.Shop" /> </node>

Weiter Informationen findet man im Wiki auf www.dotnetnuke.com

Kommentar schreiben