<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>AppenderAttachedImpl.RemoveAppender Method (IAppender)</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">AppenderAttachedImpl.RemoveAppender�Method�(IAppender)</h1>
      </div>
    </div>
    <div id="nstext">
      <p> Removes the specified appender from the list of attached appenders. </p>
      <div class="syntax">
        <span class="lang">[Visual�Basic]</span>
        <br />NotOverridable�Overloads�Public�Function�RemoveAppender( _<br />���ByVal <i>appender</i>�As�<a href="log4net.Appender.IAppender.html">IAppender</a>�_<br />)�As�<a href="log4net.Appender.IAppender.html">IAppender</a>�_<div>����Implements�<a href="log4net.Core.IAppenderAttachable.RemoveAppender_overload_1.html">IAppenderAttachable.RemoveAppender</a></div></div>
      <div class="syntax">
        <span class="lang">[C#]</span>
        <br />public�<a href="log4net.Appender.IAppender.html">IAppender</a>�RemoveAppender(<br />���<a href="log4net.Appender.IAppender.html">IAppender</a>�<i>appender</i><br />);</div>
      <h4 class="dtH4">Parameters</h4>
      <dl>
        <dt>
          <i>appender</i>
        </dt>
        <dd>The appender to remove.</dd>
      </dl>
      <h4 class="dtH4">Return Value</h4>
      <p>The appender removed from the list</p>
      <h4 class="dtH4">Implements</h4>
      <p>
        <a href="log4net.Core.IAppenderAttachable.RemoveAppender_overload_1.html">IAppenderAttachable.RemoveAppender</a>
      </p>
      <h4 class="dtH4">Remarks</h4>
            <p> The appender removed is not closed. If you are discarding the appender you must call <a href="log4net.Appender.IAppender.Close.html">Close</a> on the appender removed. </p>
            <h4 class="dtH4">See Also</h4><p><a href="log4net.Util.AppenderAttachedImpl.html">AppenderAttachedImpl Class</a> | <a href="log4net.Util.html">log4net.Util Namespace</a> | <a href="log4net.Util.AppenderAttachedImpl.RemoveAppender_overloads.html">AppenderAttachedImpl.RemoveAppender Overload List</a></p><object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e" viewastext="true" style="display: none;"><param name="Keyword" value="RemoveAppender method"></param><param name="Keyword" value="RemoveAppender method, AppenderAttachedImpl class"></param><param name="Keyword" value="AppenderAttachedImpl.RemoveAppender method"></param></object><hr /><div id="footer"><a href='http://logging.apache.org/log4net/'>Copyright 2004-2011 The Apache Software Foundation.</a><br></br>Apache log4net, Apache and log4net are trademarks of The Apache Software Foundation.</div></div>
  </body>
</html>
