<html dir="LTR">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=Windows-1252" />
    <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5" />
    <title>XmlConfigurator.Configure Method ()</title>
    <xml>
    </xml>
    <link rel="stylesheet" type="text/css" href="MSDN.css" />
  </head>
  <body id="bodyID" class="dtBODY">
    <div id="nsbanner">
      <div id="bannerrow1">
        <table class="bannerparthead" cellspacing="0">
          <tr id="hdr">
            <td class="runninghead">Apache log4net� SDK Documentation - Microsoft .NET Framework 4.0</td>
            <td class="product">
            </td>
          </tr>
        </table>
      </div>
      <div id="TitleRow">
        <h1 class="dtH1">XmlConfigurator.Configure�Method�()</h1>
      </div>
    </div>
    <div id="nstext">
      <p> Automatically configures the log4net system based on the application's configuration settings. </p>
      <div class="syntax">
        <span class="lang">[Visual�Basic]</span>
        <br />Overloads�Public�Shared�Function�Configure()�As�<a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemCollectionsICollectionClassTopic.htm">ICollection</a></div>
      <div class="syntax">
        <span class="lang">[C#]</span>
        <br />public�static�<a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemCollectionsICollectionClassTopic.htm">ICollection</a>�Configure();</div>
      <h4 class="dtH4">Remarks</h4>
            <p> Each application has a configuration file. This has the same name as the application with '.config' appended. This file is XML and calling this function prompts the configurator to look in that file for a section called <code>log4net</code> that contains the configuration data. </p>
            <p> To use this method to configure log4net you must specify the <a href="log4net.Config.Log4NetConfigurationSectionHandler.html">Log4NetConfigurationSectionHandler</a> section handler for the <code>log4net</code> configuration section. See the <b>Log4NetConfigurationSectionHandler</b> for an example. </p>
            <h4 class="dtH4">See Also</h4><p><a href="log4net.Config.XmlConfigurator.html">XmlConfigurator Class</a> | <a href="log4net.Config.html">log4net.Config Namespace</a> | <a href="log4net.Config.XmlConfigurator.Configure_overloads.html">XmlConfigurator.Configure Overload List</a> | <a href="log4net.Config.Log4NetConfigurationSectionHandler.html">Log4NetConfigurationSectionHandler</a></p><object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e" viewastext="true" style="display: none;"><param name="Keyword" value="Configure method"></param><param name="Keyword" value="Configure method, XmlConfigurator class"></param><param name="Keyword" value="XmlConfigurator.Configure method"></param></object><hr /><div id="footer"><a href='http://logging.apache.org/log4net/'>Copyright 2004-2013 The Apache Software Foundation.</a><br></br>Apache log4net, Apache and log4net are trademarks of The Apache Software Foundation.</div></div>
  </body>
</html>
