<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>AddRange 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">PluginCollection.AddRange�Method</h1>
      </div>
    </div>
    <div id="nstext">
      <p> Adds the elements of a <a href="log4net.Plugin.IPlugin.html">IPlugin</a> array to the current <code>PluginCollection</code>. </p>
      <h4 class="dtH4">Overload List</h4>
      <p> Adds the elements of a <a href="log4net.Plugin.IPlugin.html">IPlugin</a> array to the current <code>PluginCollection</code>. </p>
      <blockquote class="dtBlock">
        <a href="log4net.Plugin.PluginCollection.AddRange_overload_2.html">public�virtual�int�AddRange(IPlugin[]);</a>
      </blockquote>
      <p> Adds the elements of another <code>PluginCollection</code> to the current <code>PluginCollection</code>. </p>
      <blockquote class="dtBlock">
        <a href="log4net.Plugin.PluginCollection.AddRange_overload_1.html">public�virtual�int�AddRange(PluginCollection);</a>
      </blockquote>
      <p> Adds the elements of a <a href="log4net.Plugin.IPlugin.html">IPlugin</a> collection to the current <code>PluginCollection</code>. </p>
      <blockquote class="dtBlock">
        <a href="log4net.Plugin.PluginCollection.AddRange_overload_3.html">public�virtual�int�AddRange(ICollection);</a>
      </blockquote>
      <h4 class="dtH4">See Also</h4>
      <p>
        <a href="log4net.Plugin.PluginCollection.html">PluginCollection Class</a> | <a href="log4net.Plugin.html">log4net.Plugin Namespace</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>
