Zuerst müssen Sie die Datei web.config ändern, in der sich Ihr virtuelles SharePoint-Verzeichnis befindet. Dies liegt daran, dass Sie SafeControl-Einträge hinzufügen müssen, um der log4net-Assembly zu vertrauen. Sie können die web.config programmgesteuert mithilfe der SPWebConfigModification-Klasse in einem Feature-Empfänger aktualisieren. Da Sie sowieso web.config ändern müssen, sollten Sie in Erwägung ziehen, Ihre log4net-Konfiguration in das System zu integrieren und keine externe log4net-Konfiguration einzurichten.
Wenn Sie jedoch nach wie vor, dies tun möchte, kann es funktionieren, wenn Sie die folgenden Funktionen der Datei web.config hinzufügen:
<configuration ...>
...
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
</configSections>
<log4net configSource="log4Net.config">
...
</configuration>
Die log4net.config Datei sollte dann in der Lage sein, neben leben Ihre web.config. Wie Nat sagt, könnten Sie diese Datei als Lösungspaket bereitstellen.
Angenommen, Sie versuchen, eine minimale Vertrauensstellung auszuführen, müssen Sie Ihre Code Access Security-Datei aktualisieren, um auch die log4net-Assemblys einzuschließen. Ihr gesamter benutzerdefinierter SharePoint-Code sollte dann automatisch Ihre log4net-Konfiguration verwenden.
Haben Sie daran gedacht, sich in die SharePoint-Protokolle einzuloggen? – Nat
Ja. Aber ich möchte verschiedene Protokolldateien für jedes Projekt haben oder eine zentrale Datenbank für Protokolle mit einer einfachen Webanwendung haben, um diese Protokolle zu sehen, ohne Zugriff auf ULS-Protokolle zu haben. – Nico