正在从log4net中的记录器名称中删除程序集信息

正在从log4net中的记录器名称中删除程序集信息,log4net,Log4net,我正在开发log4net日志记录系统,但我很难找到一种方法来删除%logger条目中的程序集信息。日志模式类似于conversionPattern value=“[%60logger]]%message%newline”,但当在日志中打印出该行时,日志程序将显示程序集信息,例如Version=1.0.0.0,Culture=neutral,PublicKeyToken=null]。我相信这是由于记录器是从泛型类型创建的,但我不确定。我需要删除该程序集信息,但我不想更改GetLogger%logg

我正在开发log4net日志记录系统,但我很难找到一种方法来删除%logger条目中的程序集信息。日志模式类似于
conversionPattern value=“[%60logger]]%message%newline”
,但当在日志中打印出该行时,日志程序将显示程序集信息,例如
Version=1.0.0.0,Culture=neutral,PublicKeyToken=null]
。我相信这是由于记录器是从泛型类型创建的,但我不确定。我需要删除该程序集信息,但我不想更改
GetLogger

%logger的每个实例,只有当该名称包含
Version=1.0.0.0、Culture=neutral、PublicKeyToken=null
时,logger才应该打印出记录器的名称。检查您在获取记录器时所做的操作:

LogManager.GetLogger(typeof(Program).FullName); //Gives name + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
如果需要类型名称,请执行以下操作:

LogManager.GetLogger(typeof(Program); //Gives name only
测试程序以查看返回的名称:

class Program
{
    static void Main(string[] args)
    {
        Console.WriteLine(typeof(GenericClass<Program>));
        Console.WriteLine(typeof(GenericClass<Program>).Name);
        Console.WriteLine(typeof(GenericClass<Program>).FullName);
        Console.WriteLine(typeof(GenericClass<Program>).ToString());
        Console.ReadKey();
    }

    class GenericClass<T> { }
}

%记录器应打印出记录器的名称,仅当该名称包含
版本=1.0.0.0、区域性=中性、PublicKeyToken=null时,才会打印出记录器的名称。检查您在获取记录器时所做的操作:

LogManager.GetLogger(typeof(Program).FullName); //Gives name + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
如果需要类型名称,请执行以下操作:

LogManager.GetLogger(typeof(Program); //Gives name only
测试程序以查看返回的名称:

class Program
{
    static void Main(string[] args)
    {
        Console.WriteLine(typeof(GenericClass<Program>));
        Console.WriteLine(typeof(GenericClass<Program>).Name);
        Console.WriteLine(typeof(GenericClass<Program>).FullName);
        Console.WriteLine(typeof(GenericClass<Program>).ToString());
        Console.ReadKey();
    }

    class GenericClass<T> { }
}