<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!-- Generated by Apache Maven Doxia at 2015-12-05 -->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Apache log4net &#x2013; Apache log4net: Supported Frameworks</title>
    <style type="text/css" media="all">
      @import url("../css/maven-base.css");
      @import url("../css/maven-theme.css");
      @import url("../css/site.css");
    </style>
    <link rel="stylesheet" href="../css/print.css" type="text/css" media="print" />
      <meta name="author" content="Nicko Cadell" />
    <meta name="Date-Revision-yyyymmdd" content="20151205" />
    <meta http-equiv="Content-Language" content="en" />
        <meta name="keywords" content="log4net supported frameworks, mono, sscli, .net, log4net" />
        </head>
  <body class="composite">
    <div id="banner">
                                      <a href="../../" id="bannerLeft">
                                                <img src="../images/ls-logo.jpg" alt="Apache Logging Services Project" />
                </a>
                    <div class="clear">
        <hr/>
      </div>
    </div>
    <div id="breadcrumbs">
            
                
                <div class="xleft">
        <span id="publishDate">Last Published: 2015-12-05</span>
                  &nbsp;| <span id="projectVersion">Version: 1.2.15</span>
                          |                           <a href="http://www.apache.org/" class="externalLink" title="Apache">Apache</a>
        &gt;
                          <a href="../../" title="Logging Services">Logging Services</a>
        &gt;
                          <a href=".././" title="log4net">log4net</a>
        &gt;
    Apache log4net &#x2013; Apache log4net: Supported Frameworks
              </div>
            <div class="xright">        
                
      </div>
      <div class="clear">
        <hr/>
      </div>
    </div>
    <div id="leftColumn">
      <div id="navcolumn">
             
                
                                <h5>Apache log4net</h5>
                  <ul>
                  <li class="none">
                          <a href="../index.html" title="About">About</a>
            </li>
                  <li class="none">
                          <a href="../download_log4net.cgi" title="Download">Download</a>
            </li>
                  <li class="none">
                          <a href="../release/release-notes.html" title="Release Notes">Release Notes</a>
            </li>
                  <li class="none">
                          <a href="../license.html" title="License">License</a>
            </li>
          </ul>
                       <h5>Documentation</h5>
                  <ul>
                  <li class="none">
                          <a href="../release/features.html" title="Features">Features</a>
            </li>
                  <li class="none">
            <strong>Supported Frameworks</strong>
          </li>
                  <li class="none">
                          <a href="../release/example-apps.html" title="Example Apps">Example Apps</a>
            </li>
                  <li class="none">
                          <a href="../release/config-examples.html" title="Config Examples">Config Examples</a>
            </li>
                  <li class="none">
                          <a href="../release/building.html" title="Building">Building</a>
            </li>
                  <li class="none">
                          <a href="../release/faq.html" title="FAQ">FAQ</a>
            </li>
                  <li class="none">
                          <a href="../release/howto/index.html" title="How Tos">How Tos</a>
            </li>
                  <li class="none">
                          <a href="../release/sdk/index.html" title="SDK Reference">SDK Reference</a>
            </li>
          </ul>
                       <h5>Manual</h5>
                  <ul>
                  <li class="none">
                          <a href="../release/manual/introduction.html" title="Introduction">Introduction</a>
            </li>
                  <li class="none">
                          <a href="../release/manual/configuration.html" title="Configuration">Configuration</a>
            </li>
                  <li class="none">
                          <a href="../release/manual/contexts.html" title="Contexts">Contexts</a>
            </li>
                  <li class="none">
                          <a href="../release/manual/plugins.html" title="Plugins">Plugins</a>
            </li>
                  <li class="none">
                          <a href="../release/manual/repositories.html" title="Repositories">Repositories</a>
            </li>
                  <li class="none">
                          <a href="../release/manual/internals.html" title="Internals">Internals</a>
            </li>
          </ul>
                       <h5>Community</h5>
                  <ul>
                  <li class="none">
                          <a href="../mail-lists.html" title="Mailing Lists">Mailing Lists</a>
            </li>
                  <li class="none">
                          <a href="../issue-tracking.html" title="Issue Tracking">Issue Tracking</a>
            </li>
          </ul>
                       <h5>Development</h5>
                  <ul>
                  <li class="none">
                          <a href="../source-repository.html" title="Repository">Repository</a>
            </li>
                  <li class="none">
                          <a href="../integration.html" title="Continuous Integration">Continuous Integration</a>
            </li>
          </ul>
                       <h5>Project Documentation</h5>
                  <ul>
                                                                                                                                                              <li class="collapsed">
                          <a href="../project-info.html" title="Project Information">Project Information</a>
                  </li>
                                                                    <li class="collapsed">
                          <a href="../project-reports.html" title="Project Reports">Project Reports</a>
                  </li>
          </ul>
                       <h5>Apache</h5>
                  <ul>
                  <li class="none">
                          <a href="http://www.apache.org/" class="externalLink" title="Home">Home</a>
            </li>
                  <li class="none">
                          <a href="http://www.apache.org/licenses/" class="externalLink" title="License">License</a>
            </li>
                  <li class="none">
                          <a href="http://www.apache.org/foundation/sponsorship.html" class="externalLink" title="Sponsorship">Sponsorship</a>
            </li>
                  <li class="none">
                          <a href="http://www.apache.org/foundation/thanks.html" class="externalLink" title="Thanks">Thanks</a>
            </li>
                  <li class="none">
                          <a href="http://www.apache.org/security/" class="externalLink" title="Security">Security</a>
            </li>
                  <li class="none">
                          <a href="http://www.apachecon.com" class="externalLink" title="Conferences">Conferences</a>
            </li>
          </ul>
                             <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
        <img class="poweredBy" alt="Built by Maven" src="../images/logos/maven-feather.png" />
      </a>
                   
                
            </div>
    </div>
    <div id="bodyColumn">
      <div id="contentBox">
        <!-- Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership. 
The ASF licenses this file to you under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with 
the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License. -->

    
        <a name="main"></a>
<div class="section" id="main">
<h2><a name="Apache_log4net_Supported_Frameworks"></a>Apache log4net&#x2122; Supported Frameworks</h2>
        
            <a name="summary"></a>
<div class="section" id="summary">
<h2><a name="Summary_of_.NET_frameworks_supported_by_log4net"></a>Summary of .NET frameworks supported by log4net</h2>
                
<p>
                    log4net is built on a number of different frameworks. Each new version of the frameworks add
                    new features. To take advantage of these new features we must build log4net using the
                    appropriate framework. We also maintain builds compatible with older versions of the frameworks.
                </p>
                
<p>
                    It is important to remember that the .NET frameworks support backward compatibility, that is
                    a new version of the framework will run binary assemblies that were targeted to previous versions
                    of the framework.
                </p>
                
<p>
                    While the number of different builds available may seem confusing, you only need to select the
                    nearest build for your platform that is equal to or earlier than your chosen deployment framework.
                    If you intend to deploy your application on the Microsoft&#xae; .NET Framework 1.0 don't pick the
                    log4net build that is built against the Microsoft .NET Framework 1.1 because the .NET framework
                    does not guarantee forward compatibility only backward compatibility.
                </p>
                
<p>
                    The lowest common denominator build is the CLI 1.0 Compatible build. This build is compatible with
                    the ECMA/ISO CLI 1.0 standard APIs and will run on all frameworks that support the standard. (Note
                    that the Microsoft .NET Compact Framework does not support this standard). Use this build if you
                    intend to deploy you application on both the Microsoft .NET Frameworks and the Mono frameworks.
                </p>
                
<p>
                    log4net now builds on the following frameworks:
                </p>
                
                
<div class="table">
                    
<table border="0" class="bodyTable">
                        <colgroup>
                            <col style="text-align: left; white-space: nowrap" />
                            <col style="text-align: left;" />
                        </colgroup>
                        
<tr class="a">
                            
<th>Framework</th>
                            
<th>Website</th>
                        </tr>
                        
<tr class="b" style="vertical-align: top;">
                            
<td>Microsoft .NET Framework 1.0</td>
                            
<td><a class="externalLink" href="http://msdn.microsoft.com/en-us/netframework/">http://msdn.microsoft.com/en-us/netframework/</a></td>
                        </tr>
                        
<tr class="a" style="vertical-align: top;">
                            
<td>Microsoft .NET Framework 1.1</td>
                            
<td><a class="externalLink" href="http://msdn.microsoft.com/en-us/netframework/">http://msdn.microsoft.com/en-us/netframework/</a></td>
                        </tr>
                        
<tr class="b" style="vertical-align: top;">
                            
<td>Microsoft .NET Framework 2.0</td>
                            
<td><a class="externalLink" href="http://msdn.microsoft.com/en-us/netframework/">http://msdn.microsoft.com/en-us/netframework/</a></td>
                        </tr>
                        
<tr class="a" style="vertical-align: top;">
                            
<td>Microsoft .NET Framework 3.5</td>
                            
<td><a class="externalLink" href="http://msdn.microsoft.com/en-us/netframework/">http://msdn.microsoft.com/en-us/netframework/</a></td>
                        </tr>
                        
<tr class="b" style="vertical-align: top;">
                            
<td>Microsoft .NET Framework 4.0</td>
                            
<td><a class="externalLink" href="http://msdn.microsoft.com/en-us/netframework/">http://msdn.microsoft.com/en-us/netframework/</a></td>
                        </tr>
                        
<tr class="a" style="vertical-align: top;">
                            
<td>Microsoft .NET Framework 3.5 Client Profile</td>
                            
<td><a class="externalLink" href="http://msdn.microsoft.com/en-us/library/cc656912.aspx">http://msdn.microsoft.com/en-us/library/cc656912.aspx</a></td>
                        </tr>
                        
<tr class="b" style="vertical-align: top;">
                            
<td>Microsoft .NET Framework 4.0 Client Profile</td>
                            
<td><a class="externalLink" href="http://msdn.microsoft.com/en-us/library/cc656912.aspx">http://msdn.microsoft.com/en-us/library/cc656912.aspx</a></td>
                        </tr>
                        
<tr class="a" style="vertical-align: top;">
                            
<td>Microsoft .NET Framework 4.5</td>
                            
<td><a class="externalLink" href="http://msdn.microsoft.com/en-us/netframework/">http://msdn.microsoft.com/en-us/netframework/</a></td>
                        </tr>
                        
<tr class="b" style="vertical-align: top;">
                            
<td>Microsoft .NET Compact Framework 1.0</td>
                            
<td><a class="externalLink" href="http://msdn2.microsoft.com/en-us/netframework/aa497273.aspx">http://msdn2.microsoft.com/en-us/netframework/aa497273.aspx</a></td>
                        </tr>
                        
<tr class="a" style="vertical-align: top;">
                            
<td>Microsoft .NET Compact Framework 2.0</td>
                            
<td><a class="externalLink" href="http://msdn2.microsoft.com/en-us/netframework/aa497273.aspx">http://msdn2.microsoft.com/en-us/netframework/aa497273.aspx</a></td>
                        </tr>
                        
<tr class="b" style="vertical-align: top;">
                            
<td>Mono</td>
                            
<td><a class="externalLink" href="http://www.mono-project.com">http://www.mono-project.com</a></td>
                        </tr>
                        
<tr class="a" style="vertical-align: top;">
                            
<td>Microsoft Shared Source CLI 1.0</td>
                            
<td><a class="externalLink" href="http://msdn.microsoft.com/en-us/library/ms973879.aspx">http://msdn.microsoft.com/en-us/library/ms973879.aspx</a></td>
                        </tr>
                        
<tr class="b" style="vertical-align: top;">
                            
<td>CLI 1.0 Compatible</td>
                            
<td><a class="externalLink" href="http://msdn.microsoft.com/en-us/netframework/aa569283.aspx">http://msdn.microsoft.com/en-us/netframework/aa569283.aspx</a></td>
                        </tr>
                    </table>
                </div>
                
<p>
                    For most of these frameworks a log4net assembly targeting the framework is supplied.  Although it's 
                    perfectly possible to use the .NET Framework 1.0 version of log4net on the .NET Framework 1.1, having 
                    an assembly that really targets a specific framework allows us to use features in that framework that 
                    are not available in other frameworks or remove features from log4net that are not supported in a 
                    specific framework.
                </p>
                
<p>
                  There are no assemblies targeting the Compact
                  Framework 1.0/2.0 or Microsoft Shared Source CLI 1.0 in
                  the binary release, but they can be built from the
                  source release.
                </p>
            </div>
            
            <a name="appenders"></a>
<div class="section" id="appenders">
<h2><a name="Appenders"></a>Appenders</h2>
                
<p>
                    The appenders available to each framework depend on the functionality of the 
                    framework and the platform it runs on:
                </p>
                
<div class="table">
                    
<table border="0" class="bodyTable">
                        <colgroup>
                            <col style="text-align: left;" />
                            <col style="text-align: center;" />
                            <col style="text-align: center;" />
                            <col style="text-align: center;" />
                            <col style="text-align: center;" />
                            <col style="text-align: center;" />
                            <col style="text-align: center;" />
                            <col style="text-align: center;" />
                            <col style="text-align: center;" />
                            <col style="text-align: center;" />
                            <col style="text-align: center;" />
                            <col style="text-align: center;" />
                            <col style="text-align: center;" />
                            <col style="text-align: center;" />
                            <col style="text-align: center;" />
                        </colgroup>
                        
<tr class="a">
                            
<th>Appender</th>
                            
<th>.NET Framework 1.0</th>
                            
<th>.NET Framework 1.1</th>
                            
<th>.NET Framework 2.0</th>
                            
<th>.NET Framework 3.5</th>
                            
<th>.NET Framework 4.0</th>
                            
<th>.NET Framework 4.5</th>
                            
<th>.NET Framework 3.5 Client Profile</th>
                            
<th>.NET Framework 4.0 Client Profile</th>
                            
<th>.NET CF 1.0</th>
                            
<th>.NET CF 2.0</th>
                            
<th>Mono</th>
                            
<th>Shared Source CLI 1.0</th>
                            
<th>CLI 1.0 Compatible</th>
                        </tr>
                        
<tr class="b">
                            
<td>AdoNetAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td></td>
                            
<td>x</td>
                        </tr>
                        
<tr class="a">
                            
<td>AnsiColorTerminalAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                        </tr>
                        
<tr class="b">
                            
<td>AspNetTraceAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td></td>
                            
<td></td>
                            
<td></td>
                            
<td></td>
                            
<td>x</td>
                            
<td></td>
                            
<td>x</td>
                        </tr>
                        
<tr class="a">
                            
<td>BufferingForwardingAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                        </tr>
                        
<tr class="b">
                            
<td>ColoredConsoleAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td></td>
                            
<td></td>
                            
<td></td>
                            
<td></td>
                            
<td></td>
                        </tr>
                        
<tr class="a">
                            
<td>ConsoleAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                        </tr>
                        
<tr class="b">
                            
<td>DebugAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                        </tr>
                        
<tr class="a">
                            
<td>EventLogAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td></td>
                            
<td></td>
                            
<td>x</td>
                            
<td></td>
                            
<td>x</td>
                        </tr>
                        
<tr class="b">
                            
<td>FileAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                        </tr>
                        
<tr class="a">
                            
<td>ForwardingAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                        </tr>
                        
<tr class="b">
                            
<td>LocalSyslogAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td></td>
                            
<td></td>
                            
<td>x</td>
                            
<td></td>
                            
<td>x</td>
                        </tr>
                        
<tr class="a">
                            
<td>ManagedColoredConsoleAppender</td>
                            
<td></td>
                            
<td></td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td></td>
                            
<td></td>
                            
<td>x</td>
                            
<td></td>
                            
<td></td>
                        </tr>
                        
<tr class="b">
                            
<td>MemoryAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                        </tr>
                        
<tr class="a">
                            
<td>NetSendAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td></td>
                            
<td></td>
                            
<td></td>
                            
<td></td>
                            
<td></td>
                        </tr>
                        
<tr class="b">
                            
<td>OutputDebugStringAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td></td>
                            
<td></td>
                            
<td></td>
                        </tr>
                        
<tr class="a">
                            
<td>RemoteSyslogAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                        </tr>
                        
<tr class="b">
                            
<td>RemotingAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td></td>
                            
<td></td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                        </tr>
                        
<tr class="a">
                            
<td>RollingFileAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                        </tr>
                        
<tr class="b">
                            
<td>SmtpAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td></td>
                            
<td></td>
                            
<td>x</td>
                            
<td></td>
                            
<td>x</td>
                        </tr>
                        
<tr class="a">
                            
<td>SmtpPickupDirAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                        </tr>
                        
<tr class="b">
                            
<td>TelnetAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                        </tr>
                        
<tr class="a">
                            
<td>TraceAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                        </tr>
                        
<tr class="b">
                            
<td>UdpAppender</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                            
<td>x</td>
                        </tr>
                    </table>
                </div>
            </div>
            
            <a name="notes"></a>
<div class="section" id="notes">
<h2><a name="Framework_Specific_Notes"></a>Framework Specific Notes</h2>
                <a name="net1.0"></a>
<div class="section" id="net1.0">
<h2><a name="Microsoft_.NET_Framework_1.0"></a>Microsoft .NET Framework 1.0</h2>
                    
<p>
                        none
                    </p>
                </div>
                
                <a name="net1.1"></a>
<div class="section" id="net1.1">
<h2><a name="Microsoft_.NET_Framework_1.1"></a>Microsoft .NET Framework 1.1</h2>
                    
<p>
                        none
                    </p>
                </div>
                
                <a name="net2.0"></a>
<div class="section" id="net2.0">
<h2><a name="Microsoft_.NET_Framework_2.0"></a>Microsoft .NET Framework 2.0</h2>
                    
<p>
                        none
                    </p>
                </div>
                
                <a name="net3.5"></a>
<div class="section" id="net3.5">
<h2><a name="Microsoft_.NET_Framework_3.5"></a>Microsoft .NET Framework 3.5</h2>
                    
<p>
                        none
                    </p>
                </div>
                
                <a name="net4.0"></a>
<div class="section" id="net4.0">
<h2><a name="Microsoft_.NET_Framework_4.0"></a>Microsoft .NET Framework 4.0</h2>
                    
<p>
                        none
                    </p>
                </div>
                
                <a name="net4.5"></a>
<div class="section" id="net4.5">
<h2><a name="Microsoft_.NET_Framework_4.5"></a>Microsoft .NET Framework 4.5</h2>
                    
<p>
                        none
                    </p>
                </div>
                
                <a name="netcp3.5"></a>
<div class="section" id="netcp3.5">
<h2><a name="Microsoft_.NET_Framework_3.5_Client_Profile"></a>Microsoft .NET Framework 3.5 Client Profile</h2>
                    
<p>
                        As of log4net 1.2.11 this version is identical
                        to the .NET 3.5 version without support for
                        ASP.NET specific appenders and patterns.
                    </p>
                </div>
                
                <a name="netcp4.0"></a>
<div class="section" id="netcp4.0">
<h2><a name="Microsoft_.NET_Framework_4.0_Client_Profile"></a>Microsoft .NET Framework 4.0 Client Profile</h2>
                    
<p>
                        As of log4net 1.2.11 this version is identical
                        to the .NET 4.0 version without support for
                        ASP.NET specific appenders and patterns.
                    </p>
                </div>
                
                <a name="netcf1.0"></a>
<div class="section" id="netcf1.0">
<h2><a name="Microsoft_.NET_Compact_Framework_1.0"></a>Microsoft .NET Compact Framework 1.0</h2>
                            
<div class="section">
<div class="section">
<h4><a name="Assembly_attributes"></a>Assembly attributes</h4>
                            
<p>
                                The .NET Compact Framework 1.0 does not support retrieving assembly level 
                                attributes, therefore all log4net configuration attributes were removed from 
                                the .NET Compact Framework 1.0 version of log4net.
                            </p>
                            
<p>
                                For Smart-device applications, the log4net system can be configured by passing 
                                the location of the log4net configuration file to the
                                <span class="code">log4net.Config.XmlConfigurator.Configure(FileInfo)</span>
                                method in the entry point of the application.
                            </p>
                            
<p>For example:</p>
                            
<p></p>
                            
<div>
<pre class="code">
namespace TestApp
{
    using System.IO;

    public class EntryPoint
    {
        /// &lt;summary&gt;
        /// Application entry point.
        /// &lt;/summary&gt;
        public static void Main() 
        {
            // Uncomment the next line to enable log4net internal debugging
            // log4net.Util.LogLog.InternalDebugging = true;

            // This will instruct log4net to look for a configuration file
            // called config.log4net in the root directory of the device
            log4net.Config.XmlConfigurator.Configure(new FileInfo(@&quot;\config.log4net&quot;));

            ...
            
            // This will shutdown the log4net system
            log4net.LogManager.Shutdown();
        }
    }
}                        
                            </pre></div>
                            </div>
<div class="section">
<h4><a name="Notification_events"></a>Notification events</h4>
                            
<p>
                                The .NET Compact Framework 1.0 does not support notification events during the 
                                application shutdown, therefore log4net cannot automatically hook the 
                                application shutdown notification.
                            </p>
                            
<p>
                                Applications will need to programmatically shutdown the log4net system during 
                                the application's shutdown using the
                                <span class="code">log4net.LogManager.Shutdown()</span>
                                method in order to prevent losing logging events.
                                See the code above for an example.
                            </p>
                            </div>
<div class="section">
<h4><a name="FileSystemWatcher"></a>FileSystemWatcher</h4>
                            
<p>
                                The .NET Compact Framework 1.0 does not support the
                                <span class="code">System.IO.FileSystemWatcher</span>
                                class. As a result, the
                                <span class="code">XmlConfiguratorAttribute.Watch</span>
                                property and the 
                                <span class="code">XmlConfigurator.ConfigureAndWatch</span>
                                methods are not available. Watching changes to the log4net configuration 
                                file is not supported on the .NET Compact Framework 1.0.
                            </p>
                            </div>
<div class="section">
<h4><a name="UserName"></a>UserName</h4>
                            
<p>
                                The .NET Compact Framework 1.0 does not support the
                                <span class="code">System.Security.Principal.WindowsIdentity</span> class.
                                This is used to capture the current thread's user identity. Therefore
                                the <span class="code">LoggingEvent.UserName</span> property will return the value 
                                <span class="code">&quot;NOT AVAILABLE&quot;</span>.
                            </p>
                            </div>
<div class="section">
<h4><a name="Identity"></a>Identity</h4>
                            
<p>
                                The .NET Compact Framework 1.0 does not support the
                                <span class="code">System.Security.Principal.IPrincipal</span> interface.
                                This is used to capture the current thread's user identity. Therefore
                                the <span class="code">LoggingEvent.Identity</span> property will return the value 
                                <span class="code">&quot;NOT AVAILABLE&quot;</span>.
                            </p>
                            </div>
<div class="section">
<h4><a name="Environment_variables"></a>Environment variables</h4>
                            
<p>
                                The .NET Compact Framework 1.0 does not support retrieving environment 
                                variables, therefore it's not possible to substitute environment variables in 
                                parameter values when using the .NET Compact Framework 1.0 version of log4net.
                            </p>
                            </div>
<div class="section">
<h4><a name="Serialization"></a>Serialization</h4>
                            
<p>
                                The .NET Compact Framework 1.0 does not support serialization, therefore none of 
                                the log4net classes in the .NET Compact Framework 1.0 version are serializable.
                            </p>
                            </div>
<div class="section">
<h4><a name="LoggingEvent.Domain"></a>LoggingEvent.Domain</h4>
                            
<p>
                                The .NET Compact Framework 1.0 does not support AppDomain functionality. The
                                friendly name for the current AppDomain is stored in the <span class="code">LoggingEvent.Domain</span>
                                property and is accessed using the <span class="code">%a</span> pattern of the 
                                <span class="code">PatternLayout</span>. On the .NET Compact Framework 1.0 this
                                value is generated by taking the file name for the application's primary module.
                            </p>
                </div></div></div>
                <a name="netcf2.0"></a>
<div class="section" id="netcf2.0">
<h2><a name="Microsoft_.NET_Compact_Framework_2.0"></a>Microsoft .NET Compact Framework 2.0</h2>
                    
<p>
                        See notes for .NET Compact Framework 1.0
                    </p>
                </div>
                <a name="mono"></a>
<div class="section" id="mono">
<h2><a name="Mono"></a>Mono</h2>
                    
<p>
                        There are 2 separate builds of log4net for mono; Mono 1.0, built using the C# compiler in a mode 
                        which is compatible with the CLI 1.0 language specification, and; Mono 2.0, built using the .NET 
                        2.0 extensions to the C# language.
                    </p>
                
                    <a name="mono1.0"></a>
<div class="section" id="mono1.0">
<h2><a name="Mono_1.0"></a>Mono 1.0</h2>
                        
<p>
                            none
                        </p>
                    </div>
                    <a name="mono2.0"></a>
<div class="section" id="mono2.0">
<h2><a name="Mono_2.0"></a>Mono 2.0</h2>
                        
<p>
                            none
                        </p>
                    </div>
                    <a name="mono3.5"></a>
<div class="section" id="mono3.5">
<h2><a name="Mono_3.5"></a>Mono 3.5</h2>
                        
<p>
                            none
                        </p>
                    </div>
                    <a name="mono4.0"></a>
<div class="section" id="mono4.0">
<h2><a name="Mono_4.0"></a>Mono 4.0</h2>
                        
<p>
                            none
                        </p>
                    </div>
                    
                </div>
                
                <a name="sscli1.0"></a>
<div class="section" id="sscli1.0">
<h2><a name="Microsoft_Shared_Source_CLI_1.0"></a>Microsoft Shared Source CLI 1.0</h2>
                            
<div class="section">
<div class="section">
<h4><a name="FileSystemWatcher"></a>FileSystemWatcher</h4>
                            
<p>
                                SSCLI 1.0 does not support the
                                <span class="code">System.IO.FileSystemWatcher</span>
                                class. As a result, the
                                <span class="code">XmlConfiguratorAttribute.Watch</span>
                                property and the 
                                <span class="code">XmlConfigurator.ConfigureAndWatch</span>
                                methods are not available. Watching changes to the log4net configuration 
                                file is not supported on SSCLI 1.0.
                            </p>
                            </div>
<div class="section">
<h4><a name="UserName"></a>UserName</h4>
                            
<p>
                                SSCLI 1.0 does not support the
                                <span class="code">System.Security.Principal.WindowsIdentity</span> class.
                                This is used to capture the current thread's user identity. Therefore
                                the <span class="code">LoggingEvent.UserName</span> property will return the value 
                                <span class="code">&quot;NOT AVAILABLE&quot;</span>.
                            </p>
                            </div>
<div class="section">
<h4><a name="Identity"></a>Identity</h4>
                            
<p>
                                SSCLI 1.0 does not support the
                                <span class="code">System.Security.Principal.IPrincipal</span> interface.
                                This is used to capture the current thread's user identity. Therefore
                                the <span class="code">LoggingEvent.Identity</span> property will return the value 
                                <span class="code">&quot;NOT AVAILABLE&quot;</span>.
                            </p>
                </div></div></div>
                
                <a name="cli1.0"></a>
<div class="section" id="cli1.0">
<h2><a name="CLI_1.0_Compatible"></a>CLI 1.0 Compatible</h2>
                    
<p>
                        This build of log4net is designed to run on any ECMA CLI 1.0 compatible runtime.
                        The assembly does not support any platform specific features. The build includes
                        the common subset of functionality found in the .NET 1.0 and Mono 1.0 builds.
                        The output assembly is built using the Microsoft .NET 1.0 compiler and library.
                    </p>
                    
<p>
                        The log4net CLI 1.0 assembly is runtime compatible with the following frameworks:
                    </p>
                    
<ul>
                        
<li>Microsoft .NET Framework 1.0 (and higher)</li>
                        
<li>Mono 1.0 (and higher)</li>
                    </ul>
                    
<p>
                        Only a Release build is generated for this configuration because the assembly
                        debugging information has not been standardized.
                    </p>
                </div>
                
            </div>
            
        </div>
        
    

      </div>
    </div>
    <div class="clear">
      <hr/>
    </div>
    <div id="footer">
      <div class="xright">
        <div class="xright">Copyright &#169;                    2004-2015
                        <a href="http://www.apache.org">Apache Software Foundation</a>.
                  
                
       Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache Software License, Version 2.0</a>.</div><br />
        <div class="xright">Apache log4net, Apache, log4net, the Apache feather logo, the Apache Logging Services project logo and the Built by Maven logo are trademarks of The Apache Software Foundation.</div>
        <div class="clear">
      </div>
    </div>
  </body>
</html>
