Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 4.0 无法获取传递给log4net logger中函数的所有参数_C# 4.0_Logging_Log4net_Log4net Configuration_Log4net Appender - Fatal编程技术网

C# 4.0 无法获取传递给log4net logger中函数的所有参数

C# 4.0 无法获取传递给log4net logger中函数的所有参数,c#-4.0,logging,log4net,log4net-configuration,log4net-appender,C# 4.0,Logging,Log4net,Log4net Configuration,Log4net Appender,我正在使用log4net创建一个日志文件,我将结果记录在.xml文件中,一切都很正常,但我有一个问题,我使用了library类并在表单中引用它,在表单中单击按钮,我调用了logger文件中的log函数并传递了四个参数,我获得了所有其他记录,但未能获得日志属性。我正在使用空闲代码来编写xml文件 public class MyXmlLayout : XmlLayoutBase { protected override void FormatXml(XmlWriter writer, Log

我正在使用log4net创建一个日志文件,我将结果记录在.xml文件中,一切都很正常,但我有一个问题,我使用了library类并在表单中引用它,在表单中单击按钮,我调用了logger文件中的log函数并传递了四个参数,我获得了所有其他记录,但未能获得日志属性。我正在使用空闲代码来编写xml文件

public class MyXmlLayout : XmlLayoutBase
{
    protected override void FormatXml(XmlWriter writer, LoggingEvent loggingEvent)
    { writer.WriteStartElement("LogEntry");

        writer.WriteStartElement("Level");
        writer.WriteString(loggingEvent.Level.DisplayName);
        writer.WriteEndElement();
        writer.WriteEndElement();

        }
这些是我传递给函数的参数

 try
        {
            int i = 25;
            int j = 0;
            int foo = i / j;
        }
        catch (DivideByZeroException ex)
        {
            Logger.Log("ErrorLog", LoggingLevel.Error, "Attempted to divide by zero.",
            new { User = "Fred Bloggs", Environment = "Production" }, ex);
        }
有人能告诉我如何访问“用户”和“环境”吗???
或任何其他建议

我并没有得到任何解决方案,我使用xml序列化并将对象传递给变量来编写。现在它为我工作。