【问题标题】:Log4Net and .NET 4.0Log4Net 和 .NET 4.0
【发布时间】:2010-12-24 09:59:16
【问题描述】:

已经有一段时间没有任何 log4net 版本了。这对 3.5 没有任何问题,但是 .NET 4 呢?有没有人听说过有关支持版本 4 框架的版本的传言?

【问题讨论】:

    标签: .net log4net


    【解决方案1】:

    “使用 .NET 4。项目您仍然可以使用 log4net。您必须在项目上将目标平台更改为“.NET Framework 4”...”

    是正确的。但是你需要放线

    <startup>
       <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
    </startup>
    

    到配置文件的底部(在log4net设置之后):

    <?xml version="1.0"?>
    <configuration>
      <configSections>
        <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
      </configSections>
      <log4net>
        <appender name="FileAppender" type="log4net.Appender.FileAppender">
          <file value="logfile.txt" />
          <appendToFile value="true" />
          <layout type="log4net.Layout.PatternLayout">
            <conversionPattern value="%date: %-5level – %message%newline" />
          </layout>
        </appender>
        <root>
          <level value="DEBUG" />
          <appender-ref ref="FileAppender" />
        </root>
      </log4net>
      <startup>
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
      </startup>
    </configuration>
    

    使用 log4net 1.2.10.0 测试 你需要把这条线: [程序集:log4net.Config.XmlConfigurator(Watch = false)] 在 Assemblyinfo.cs 中(我忘了)

    【讨论】:

    • +1 用于包含有关将行添加到 AssemblyInfo.cs 的信息。否则,应用配置文件中的 log4net 设置将被忽略。
    【解决方案2】:

    使用 .NET 4。您仍然可以使用 log4net 的项目。您必须将项目的目标平台更改为“.NET Framework 4”。

    更多细节.... http://krishnabhargav.blogspot.com/2010/02/using-net-35-clr-20-dll-inside-visual.html

    【讨论】:

      【解决方案3】:

      跟踪系统存在问题 4.0 支持。
      如果你需要,你可以自己编译最新版本的版本——它会编译的。

      【讨论】:

        【解决方案4】:

        以下是我们关于让 log4net 使用 C# 和 .Net 4.0 与 VS2010 一起工作的说明。它基本上遵循 tsonet 帖子,但只需几个简单的步骤。我们还将安全级别设置为 1,而不是评论 AllowPartiallyTrustedCallers,但任一选项似乎都有效。

        希望这对某人有用: http://www.charlestonsw.com/configuring-log4net-with-vs2010-and-net-4-0/

        【讨论】:

        • 上面引用的链接已失效
        • 替换为新网址。我在 CSA 的新博客上保留了一些技术内容。
        【解决方案5】:

        There is a JIRA entry for .NET 4.0 and Client Profiles () 但it is not slated for release in 1.2.11

        有一个相关的(未回答的)问题带有一条评论,建议您可以简单地run the 1.2.10 source through the VS2010 upgrade process

        【讨论】:

        • 谢谢,JIRA 条目包含一个补丁 - 将其应用于 SVN HEAD,然后:“...以 .Net 4.0 为目标定义 NET;NET_2_0;NET_4_0,以 .Net 4.0 为目标客户端配置文件追加;NET_CLIENT_PROFILE 到之前的定义。" - 为我解决了这个问题(另外,这个补丁现在声明在 1.2.11 中发布,以供将来参考)
        【解决方案6】:

        我在我的 asp.net Web 应用程序中使用 log4net,没有问题。

        我按照本教程工作:http://www.codeproject.com/KB/trace/Log4Net_with_ASP_NET.aspx

        【讨论】:

        • 该教程与 OP 所追求的 .NET 4.0 无关。
        【解决方案7】:

        目前的log4net trunk似乎支持.NET Framework 4.0。此支持尚未随版本一起发布。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2010-12-18
          • 1970-01-01
          • 1970-01-01
          • 2013-08-23
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多