﻿<html><head><meta http-equiv="X-UA-Compatible" content="IE=edge" /><link rel="shortcut icon" href="../icons/favicon.ico" /><style type="text/css">.OH_CodeSnippetContainerTabLeftActive, .OH_CodeSnippetContainerTabLeft,.OH_CodeSnippetContainerTabLeftDisabled { }.OH_CodeSnippetContainerTabRightActive, .OH_CodeSnippetContainerTabRight,.OH_CodeSnippetContainerTabRightDisabled { }.OH_footer { }</style><link rel="stylesheet" type="text/css" href="../styles/branding.css" /><link rel="stylesheet" type="text/css" href="../styles/branding-en-US.css" /><script type="text/javascript" src="../scripts/branding.js"> </script><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>LogManager.CreateDomain Method (Assembly, Type)</title><meta name="Language" content="en-us" /><meta name="Microsoft.Help.Id" content="M:log4net.LogManager.CreateDomain(System.Reflection.Assembly,System.Type)" /><meta name="Description" content="Creates a repository for the specified assembly and repository type." /><meta name="Microsoft.Help.ContentType" content="Reference" /><meta name="BrandingAware" content="true" /><meta name="container" content="log4net" /><meta name="file" content="M_log4net_LogManager_CreateDomain" /><meta name="guid" content="M_log4net_LogManager_CreateDomain" /></head><body onload="OnLoad('cs')"><input type="hidden" id="userDataCache" class="userDataStyle" /><div class="OH_outerDiv"><div class="OH_outerContent"><table class="TitleTable"><tr><td class="OH_tdTitleColumn">LogManager<span id="LST71C53055_0"></span><script type="text/javascript">AddLanguageSpecificTextSet("LST71C53055_0?cpp=::|nu=.");</script>CreateDomain Method (Assembly, Type)</td><td class="OH_tdRunningTitleColumn">Apache log4net™ SDK Documentation</td></tr></table><div id="mainSection"><div id="mainBody"><span class="introStyle"></span><p><strong>Note: This API is now obsolete.</strong></p><div class="summary">
            Creates a repository for the specified assembly and repository type.
            </div><p> </p><strong>Namespace:</strong> <a href="N_log4net.htm">log4net</a><br /><strong>Assembly:</strong> log4net (in log4net.dll) Version: 2.0.6.0-.NET 4.0<div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Syntax</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"> </div><div class="OH_CodeSnippetContainer"><div class="OH_CodeSnippetContainerTabs"><div class="OH_CodeSnippetContainerTabLeft" id="ID0EDCA_tabimgleft"> </div><div id="ID0EDCA_tab1" class="OH_CodeSnippetContainerTabFirst"><a href="#" onclick="javascript:ChangeTab('ID0EDCA','cs','1','4');return false;">C#</a></div><div id="ID0EDCA_tab2" class="OH_CodeSnippetContainerTab"><a href="#" onclick="javascript:ChangeTab('ID0EDCA','vb','2','4');return false;">VB</a></div><div id="ID0EDCA_tab3" class="OH_CodeSnippetContainerTab"><a href="#" onclick="javascript:ChangeTab('ID0EDCA','cpp','3','4');return false;">C++</a></div><div id="ID0EDCA_tab4" class="OH_CodeSnippetContainerTab"><a href="#" onclick="javascript:ChangeTab('ID0EDCA','fs','4','4');return false;">F#</a></div><div class="OH_CodeSnippetContainerTabRight" id="ID0EDCA_tabimgright"> </div></div><div class="OH_CodeSnippetContainerCodeCollection"><div class="OH_CodeSnippetToolBar"><div class="OH_CodeSnippetToolBarText"><a id="ID0EDCA_copyCode" href="#" onclick="javascript:CopyToClipboard('ID0EDCA');return false;" title="Copy">Copy</a></div></div><div id="ID0EDCA_code_Div1" class="OH_CodeSnippetContainerCode" style="display: block"><pre xml:space="preserve">[<span class="identifier">ObsoleteAttribute</span>("Use CreateRepository instead of CreateDomain")]
<span class="keyword">public</span> <span class="keyword">static</span> <span class="identifier">ILoggerRepository</span> <span class="identifier">CreateDomain</span>(
	<span class="identifier">Assembly</span> <span class="parameter">repositoryAssembly</span>,
	<span class="identifier">Type</span> <span class="parameter">repositoryType</span>
)</pre></div><div id="ID0EDCA_code_Div2" class="OH_CodeSnippetContainerCode" style="display: none"><pre xml:space="preserve">&lt;<span class="identifier">ObsoleteAttribute</span>("Use CreateRepository instead of CreateDomain")&gt;
<span class="keyword">Public</span> <span class="keyword">Shared</span> <span class="keyword">Function</span> <span class="identifier">CreateDomain</span> ( 
	<span class="parameter">repositoryAssembly</span> <span class="keyword">As</span> <span class="identifier">Assembly</span>,
	<span class="parameter">repositoryType</span> <span class="keyword">As</span> <span class="identifier">Type</span>
) <span class="keyword">As</span> <span class="identifier">ILoggerRepository</span></pre></div><div id="ID0EDCA_code_Div3" class="OH_CodeSnippetContainerCode" style="display: none"><pre xml:space="preserve"><span class="keyword">public</span>:
[<span class="identifier">ObsoleteAttribute</span>(L"Use CreateRepository instead of CreateDomain")]
<span class="keyword">static</span> <span class="identifier">ILoggerRepository</span>^ <span class="identifier">CreateDomain</span>(
	<span class="identifier">Assembly</span>^ <span class="parameter">repositoryAssembly</span>, 
	<span class="identifier">Type</span>^ <span class="parameter">repositoryType</span>
)</pre></div><div id="ID0EDCA_code_Div4" class="OH_CodeSnippetContainerCode" style="display: none"><pre xml:space="preserve">[&lt;<span class="identifier">ObsoleteAttribute</span>("Use CreateRepository instead of CreateDomain")&gt;]
<span class="keyword">static</span> <span class="keyword">member</span> <span class="identifier">CreateDomain</span> : 
        <span class="parameter">repositoryAssembly</span> : <span class="identifier">Assembly</span> * 
        <span class="parameter">repositoryType</span> : <span class="identifier">Type</span> <span class="keyword">-&gt;</span> <span class="identifier">ILoggerRepository</span> 
</pre></div></div></div><script type="text/javascript">AddLanguageTabSet("ID0EDCA");</script><h4 class="subHeading">Parameters</h4><dl><dt><span class="parameter">repositoryAssembly</span></dt><dd>Type: <a href="http://msdn2.microsoft.com/en-us/library/xbe1wdx9" target="_blank">System.Reflection<span id="LST71C53055_1"></span><script type="text/javascript">AddLanguageSpecificTextSet("LST71C53055_1?cs=.|vb=.|cpp=::|nu=.|fs=.");</script>Assembly</a><br />The assembly to use to get the name of the repository.</dd><dt><span class="parameter">repositoryType</span></dt><dd>Type: <a href="http://msdn2.microsoft.com/en-us/library/42892f65" target="_blank">System<span id="LST71C53055_2"></span><script type="text/javascript">AddLanguageSpecificTextSet("LST71C53055_2?cs=.|vb=.|cpp=::|nu=.|fs=.");</script>Type</a><br />A <a href="http://msdn2.microsoft.com/en-us/library/42892f65" target="_blank">Type</a> that implements <a href="T_log4net_Repository_ILoggerRepository.htm">ILoggerRepository</a>
            and has a no arg constructor. An instance of this type will be created to act
            as the <a href="T_log4net_Repository_ILoggerRepository.htm">ILoggerRepository</a> for the repository specified.</dd></dl><h4 class="subHeading">Return Value</h4>Type: <a href="T_log4net_Repository_ILoggerRepository.htm">ILoggerRepository</a><br />The <a href="T_log4net_Repository_ILoggerRepository.htm">ILoggerRepository</a> created for the repository.<div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Remarks</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"> </div><p><b>CreateDomain is obsolete. Use CreateRepository instead of CreateDomain.</b></p><p>
            The <a href="T_log4net_Repository_ILoggerRepository.htm">ILoggerRepository</a> created will be associated with the repository
            specified such that a call to <span class="nolink">[M:GetRepository(Assembly)]</span> with the
            same assembly specified will return the same repository instance.
            </p><div class="OH_CollapsibleAreaRegion" id="seeAlsoSection"><div class="OH_regiontitle">See Also</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"> </div><h4 class="subHeading">Reference</h4><div class="seeAlsoStyle"><a href="T_log4net_LogManager.htm">LogManager Class</a></div><div class="seeAlsoStyle"><a href="Overload_log4net_LogManager_CreateDomain.htm">CreateDomain Overload</a></div><div class="seeAlsoStyle"><a href="N_log4net.htm">log4net Namespace</a></div></div></div></div></div><div id="OH_footer" class="OH_footer">Apache log4net, Apache and log4net are trademarks of The Apache Software Foundation.<p><a href="http://logging.apache.org/log4net/" target="_blank">Copyright 2004-2016 The Apache Software Foundation</a></p><div class="OH_feedbacklink">Send comments on this topic to
        <a id="HT_MailLink" href="mailto:http%3A%2F%2Flogging.apache.org%2Flog4net%2Fmail-lists.html?Subject=Apache log4net™ SDK Documentation">http://logging.apache.org/log4net/mail-lists.html</a></div><script type="text/javascript">
        var HT_mailLink = document.getElementById("HT_MailLink");
        var HT_mailLinkText = HT_mailLink.innerHTML;
        HT_mailLink.href += ": " + document.title + "\u0026body=" + encodeURIComponent("Your feedback is used to improve the documentation and the product. Your e-mail address will not be used for any other purpose and is disposed of after the issue you report is resolved. While working to resolve the issue that you report, you may be contacted via e-mail to get further details or clarification on the feedback you sent. After the issue you report has been addressed, you may receive an e-mail to let you know that your feedback has been addressed.");
        HT_mailLink.innerHTML = HT_mailLinkText;
        </script> </div></body></html>