【问题标题】:Setting a variable in XML document from Word Add-in C# code通过 Word 插件 C# 代码在 XML 文档中设置变量
【发布时间】:2015-11-20 21:38:55
【问题描述】:

我在 Word 插件中使用 log4net 来创建日志文件。加载项将部署到多个用户,因此在 App.config 文件中找到的文件夹路径需要为每个用户更改。 在加载项初始化中,我调用了一个函数,该函数获取用户配置文件文件夹并将其设置为 app.config 文件的变量(我相信)。

public void GetCurrentUser()
        {
            string user = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);
            log4net.GlobalContext.Properties["UserFolder"] = user;
            log4net.Config.XmlConfigurator.Configure();
        }

我的 app.config xml 文件如下所示:

<log4net debug="true">
      <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
        <file type="log4net.Util.PatternString" value="%Property{user}\AppData\Local\Temp\logfile.txt" /> 
        <appendToFile value="true" />
        <rollingStyle value="Size" />
...

但是当我运行插件时它没有写入日志。有人可以指出我正确的方向吗? 谢谢

【问题讨论】:

    标签: c# xml word-addins


    【解决方案1】:

    在您的 xml(不是 c#)中,尝试将 user 替换为 UserFolder

    <file type="log4net.Util.PatternString" value="%Property{UserFolder}\AppData\Local\Temp\logfile.txt" /> 
    

    在您的代码中,您正在设置一个名为 UserFolder 的属性,但您的 xml 不包含此类引用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-07
      • 1970-01-01
      • 1970-01-01
      • 2018-07-17
      相关资源
      最近更新 更多