<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>ConverterRegistry Class</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">ConverterRegistry Class</h1>
      </div>
    </div>
    <div id="nstext">
      <p> Register of type converters for specific types. </p>
      <p>For a list of all members of this type, see <a href="log4net.Util.TypeConverters.ConverterRegistryMembers.html">ConverterRegistry Members</a>.</p>
      <p>
        <a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemObjectClassTopic.htm">System.Object</a>
        <br />���<b>log4net.Util.TypeConverters.ConverterRegistry</b></p>
      <div class="syntax">
        <span class="lang">[Visual�Basic]</span>
        <br />NotInheritable�Public�Class�ConverterRegistry</div>
      <div class="syntax">
        <span class="lang">[C#]</span>
        <div>public�sealed�class�ConverterRegistry</div>
      </div>
      <H4 class="dtH4">Thread Safety</H4>
      <P>Public static (<b>Shared</b> in Visual Basic) members of this type are 
				safe for multithreaded operations. Instance members are <b>not</b> guaranteed to be 
				thread-safe.</P>
      <h4 class="dtH4">Remarks</h4>
            <p> Maintains a registry of type converters used to convert between types. </p>
            <p> Use the <b>AddConverter</b> and <b>AddConverter</b> methods to register new converters. The <a href="log4net.Util.TypeConverters.ConverterRegistry.GetConvertTo.html">GetConvertTo</a> and <a href="log4net.Util.TypeConverters.ConverterRegistry.GetConvertFrom.html">GetConvertFrom</a> methods lookup appropriate converters to use. </p>
            <h4 class="dtH4">Requirements</h4><p><b>Namespace: </b><a href="log4net.Util.TypeConverters.html">log4net.Util.TypeConverters</a></p><p><b>Assembly: </b>log4net (in log4net.dll)
					</p><h4 class="dtH4">See Also</h4><p><a href="log4net.Util.TypeConverters.ConverterRegistryMembers.html">ConverterRegistry Members</a> | <a href="log4net.Util.TypeConverters.html">log4net.Util.TypeConverters Namespace</a> | <a href="log4net.Util.TypeConverters.IConvertFrom.html">IConvertFrom</a> | <a href="log4net.Util.TypeConverters.IConvertTo.html">IConvertTo</a></p><object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e" viewastext="true" style="display: none;"><param name="Keyword" value="ConverterRegistry class, about ConverterRegistry class"></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>
