<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>CompactRepositorySelector.ExistsRepository 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">CompactRepositorySelector.ExistsRepository�Method�</h1>
      </div>
    </div>
    <div id="nstext">
      <p> Test if a named repository exists </p>
      <div class="syntax">
        <span class="lang">[Visual�Basic]</span>
        <br />NotOverridable�Public�Function�ExistsRepository( _<br />���ByVal <i>repositoryName</i>�As�<a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemStringClassTopic.htm">String</a>�_<br />)�As�<a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemBooleanClassTopic.htm">Boolean</a>�_<div>����Implements�<a href="log4net.Core.IRepositorySelector.ExistsRepository.html">IRepositorySelector.ExistsRepository</a></div></div>
      <div class="syntax">
        <span class="lang">[C#]</span>
        <br />public�<a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemBooleanClassTopic.htm">bool</a>�ExistsRepository(<br />���<a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemStringClassTopic.htm">string</a>�<i>repositoryName</i><br />);</div>
      <h4 class="dtH4">Parameters</h4>
      <dl>
        <dt>
          <i>repositoryName</i>
        </dt>
        <dd>the named repository to check</dd>
      </dl>
      <h4 class="dtH4">Return Value</h4>
      <p>
        <code>true</code> if the repository exists</p>
      <h4 class="dtH4">Implements</h4>
      <p>
        <a href="log4net.Core.IRepositorySelector.ExistsRepository.html">IRepositorySelector.ExistsRepository</a>
      </p>
      <h4 class="dtH4">Remarks</h4>
            <p> Test if a named repository exists. Use <a href="log4net.Core.CompactRepositorySelector.CreateRepository_overload_2.html">CreateRepository</a> to create a new repository and <a href="log4net.Core.CompactRepositorySelector.GetRepository_overload_2.html">GetRepository</a> to retrieve a repository. </p>
            <h4 class="dtH4">See Also</h4><p><a href="log4net.Core.CompactRepositorySelector.html">CompactRepositorySelector Class</a> | <a href="log4net.Core.html">log4net.Core Namespace</a></p><object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e" viewastext="true" style="display: none;"><param name="Keyword" value="ExistsRepository method"></param><param name="Keyword" value="ExistsRepository method, CompactRepositorySelector class"></param><param name="Keyword" value="CompactRepositorySelector.ExistsRepository 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>
