<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>ConsoleAppender Constructor (ILayout, Boolean)</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">ConsoleAppender�Constructor�(ILayout, Boolean)</h1>
      </div>
    </div>
    <div id="nstext">
      <P>
        <FONT color="red">
          <B>NOTE: This constructor is now obsolete.</B>
        </FONT>
      </P>
      <P>
        <B>Instead use the default constructor and set the Layout &amp; Target properties</B>
      </P>
      <HR />
      <p> Initializes a new instance of the <a href="log4net.Appender.ConsoleAppender.html">ConsoleAppender</a> class with the specified layout. </p>
      <div class="syntax">
        <span class="lang">[Visual�Basic]</span>
        <br />Overloads�Public�Sub�New( _<br />���ByVal <i>layout</i>�As�<a href="log4net.Layout.ILayout.html">ILayout</a>,�_<br />���ByVal <i>writeToErrorStream</i>�As�<a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemBooleanClassTopic.htm">Boolean</a>�_<br />)</div>
      <div class="syntax">
        <span class="lang">[C#]</span>
        <br />public�ConsoleAppender(<br />���<a href="log4net.Layout.ILayout.html">ILayout</a>�<i>layout</i>,<br />���<a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemBooleanClassTopic.htm">bool</a>�<i>writeToErrorStream</i><br />);</div>
      <h4 class="dtH4">Parameters</h4>
      <dl>
        <dt>
          <i>layout</i>
        </dt>
        <dd>the layout to use for this appender</dd>
        <dt>
          <i>writeToErrorStream</i>
        </dt>
        <dd>flag set to <code>true</code> to write to the console error stream</dd>
      </dl>
      <h4 class="dtH4">Remarks</h4>
      <p> When <i>writeToErrorStream</i> is set to <code>true</code>, output is written to the standard error output stream. Otherwise, output is written to the standard output stream. </p>
      <h4 class="dtH4">See Also</h4>
      <p>
        <a href="log4net.Appender.ConsoleAppender.html">ConsoleAppender Class</a> | <a href="log4net.Appender.html">log4net.Appender Namespace</a> | <a href="log4net.Appender.ConsoleAppenderConstructor.html">ConsoleAppender Constructor Overload List</a></p>
      <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>
