簡體   English   中英

C# - 如何在當前項目中使用另一個項目日志配置?

[英]C# - How to use another project logging configuration into current project?

我的解決方案文件中有 12 個項目。 大多數 Windows 服務( ServiceProj_1, ServiceProj_2, ... )和一個項目是 Web 應用程序( WebApp )。 我使用 log4net 進行日志記錄。 WebAppServiceProject_1, ServiceProj_2, ...將 log4net 配置到web.configapp.config文件中。 我們已經實現了一個 DMZ,所以WebApp只暴露給其他人。 現在需要使用這些 windows 服務項目的日志記錄而不是WebApp

我開始知道我可以創建自定義 appender 並使其成為可能。 問題是,有很多行已經寫入WebApp以將LogMessage記錄到日志文件中,因此我們無法觸及這些行。

我不知道該做什么以及如何做。 需要幫忙。 如果描述無法理解,請告訴我,我會盡力解釋更多。

您可以指定配置文件並動態加載它...這里我的配置文件位於 FullConfigFilePath 的位置。

private Configuration Config
{
    get
    {
        if (_Config != null) return _Config;

        _Config = ConfigurationManager.OpenMappedExeConfiguration(
        new ExeConfigurationFileMap()
        {
            ExeConfigFilename = FullConfigFilePath
        }, ConfigurationUserLevel.None);
        return _Config;
    }
}   

加載配置后,您可以從那里訪問值......例如......

private string BaseUrl
{
    get
    {
        return this.Config.AppSettings.Settings["MyConfigSetting"].Value;
    }
}

希望您可以根據需要調整和使用這種方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM