﻿<html xmlns:MSHelp="http://msdn.microsoft.com/mshelp" xmlns:mshelp="http://msdn.microsoft.com/mshelp"><head><link rel="SHORTCUT ICON" href="./../icons/favicon.ico" /><style type="text/css">.OH_CodeSnippetContainerTabLeftActive, .OH_CodeSnippetContainerTabLeft,.OH_CodeSnippetContainerTabLeftDisabled { backgroundImageName: tabLeftBG.gif; }.OH_CodeSnippetContainerTabRightActive, .OH_CodeSnippetContainerTabRight,.OH_CodeSnippetContainerTabRightDisabled { backgroundImageName: tabRightBG.gif; }.OH_footer { backgroundImageName: footer_slice.gif; background-position: top; background-repeat: repeat-x; }</style><link rel="stylesheet" type="text/css" href="./../styles/branding.css" /><link rel="stylesheet" type="text/css" href="./../styles/branding-en-US.css" /><style type="text/css">
			body
			{
			border-left:5px solid #e6e6e6;
			overflow-x:scroll;
			overflow-y:scroll;
			}
		</style><script src="./../scripts/branding.js" type="text/javascript"><!----></script><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>log4net.Core Namespace</title><meta name="Language" content="en-us" /><meta name="System.Keywords" content="log4net.Core namespace" /><meta name="Microsoft.Help.F1" content="log4net.Core" /><meta name="Microsoft.Help.Id" content="N:log4net.Core" /><meta name="Description" content=" " /><meta name="Microsoft.Help.ContentType" content="Reference" /><meta name="BrandingAware" content="'true'" /><meta name="container" content="log4net.Core" /><meta name="file" content="N_log4net_Core" /><meta name="guid" content="N_log4net_Core" /><link type="text/css" rel="stylesheet" href="ms-help://Hx/HxRuntime/HxLink.css" /><meta name="SelfBranded" content="true" /></head><body onload="onLoad()" class="primary-mtps-offline-document"><div class="OH_outerDiv"><div class="OH_outerContent"><table class="TitleTable"><tr><td class="OH_tdTitleColumn">log4net.Core Namespace</td><td class="OH_tdRunningTitleColumn">Apache log4net™ SDK Documentation</td></tr></table><div id="mainSection"><div id="mainBody"><span class="introStyle"></span><div class="summary"> </div><div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Classes</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"></div><table id="typeList" class="members"><tr><th class="ps_iconColumn">
					 
				</th><th class="ps_nameColumn">Class</th><th class="ps_descriptionColumn">Description</th></tr><tr data="class; public"><td><img src="./../icons/pubclass.gif" alt="Public class" title="Public class" /></td><td><a href="T_log4net_Core_CompactRepositorySelector.htm" target="">CompactRepositorySelector</a></td><td><div class="summary">
            The implementation of the <a href="T_log4net_Core_IRepositorySelector.htm" target="">IRepositorySelector</a> interface suitable
            for use with the compact framework
            </div></td></tr><tr data="class; public"><td><img src="./../icons/pubclass.gif" alt="Public class" title="Public class" /></td><td><a href="T_log4net_Core_DefaultRepositorySelector.htm" target="">DefaultRepositorySelector</a></td><td><div class="summary">
            The default implementation of the <a href="T_log4net_Core_IRepositorySelector.htm" target="">IRepositorySelector</a> interface.
            </div></td></tr><tr data="class; public"><td><img src="./../icons/pubclass.gif" alt="Public class" title="Public class" /></td><td><a href="T_log4net_Core_ExceptionEvaluator.htm" target="">ExceptionEvaluator</a></td><td><div class="summary">
            An evaluator that triggers on an Exception type
            </div></td></tr><tr data="class; public"><td><img src="./../icons/pubclass.gif" alt="Public class" title="Public class" /></td><td><a href="T_log4net_Core_Level.htm" target="">Level</a></td><td><div class="summary">
            Defines the default set of levels recognized by the system.
            </div></td></tr><tr data="class; public"><td><img src="./../icons/pubclass.gif" alt="Public class" title="Public class" /></td><td><a href="T_log4net_Core_LevelCollection.htm" target="">LevelCollection</a></td><td><div class="summary">
            A strongly-typed collection of <a href="T_log4net_Core_Level.htm" target="">Level</a> objects.
            </div></td></tr><tr data="class; public"><td><img src="./../icons/pubclass.gif" alt="Public class" title="Public class" /></td><td><a href="T_log4net_Core_LevelEvaluator.htm" target="">LevelEvaluator</a></td><td><div class="summary">
            An evaluator that triggers at a threshold level
            </div></td></tr><tr data="class; public"><td><img src="./../icons/pubclass.gif" alt="Public class" title="Public class" /></td><td><a href="T_log4net_Core_LevelMap.htm" target="">LevelMap</a></td><td><div class="summary">
            Mapping between string name and Level object
            </div></td></tr><tr data="class; public"><td><img src="./../icons/pubclass.gif" alt="Public class" title="Public class" /></td><td><a href="T_log4net_Core_LocationInfo.htm" target="">LocationInfo</a></td><td><div class="summary">
            The internal representation of caller location information.
            </div></td></tr><tr data="class; public"><td><img src="./../icons/pubclass.gif" alt="Public class" title="Public class" /></td><td><a href="T_log4net_Core_LogException.htm" target="">LogException</a></td><td><div class="summary">
            Exception base type for log4net.
            </div></td></tr><tr data="class; public"><td><img src="./../icons/pubclass.gif" alt="Public class" title="Public class" /></td><td><a href="T_log4net_Core_LoggerManager.htm" target="">LoggerManager</a></td><td><div class="summary">
            Static manager that controls the creation of repositories
            </div></td></tr><tr data="class; public"><td><img src="./../icons/pubclass.gif" alt="Public class" title="Public class" /></td><td><a href="T_log4net_Core_LoggerRepositoryCreationEventArgs.htm" target="">LoggerRepositoryCreationEventArgs</a></td><td><div class="summary">
            Provides data for the <a href="E_log4net_Core_IRepositorySelector_LoggerRepositoryCreatedEvent.htm" target="">LoggerRepositoryCreatedEvent</a> event.
            </div></td></tr><tr data="class; public"><td><img src="./../icons/pubclass.gif" alt="Public class" title="Public class" /></td><td><a href="T_log4net_Core_LoggerWrapperImpl.htm" target="">LoggerWrapperImpl</a></td><td><div class="summary">
            Implementation of the <a href="T_log4net_Core_ILoggerWrapper.htm" target="">ILoggerWrapper</a> interface.
            </div></td></tr><tr data="class; public"><td><img src="./../icons/pubclass.gif" alt="Public class" title="Public class" /></td><td><a href="T_log4net_Core_LoggingEvent.htm" target="">LoggingEvent</a></td><td><div class="summary">
            The internal representation of logging events. 
            </div></td></tr><tr data="class; public"><td><img src="./../icons/pubclass.gif" alt="Public class" title="Public class" /></td><td><a href="T_log4net_Core_LogImpl.htm" target="">LogImpl</a></td><td><div class="summary">
            Implementation of <a href="T_log4net_ILog.htm" target="">ILog</a> wrapper interface.
            </div></td></tr><tr data="class; public"><td><img src="./../icons/pubclass.gif" alt="Public class" title="Public class" /></td><td><a href="T_log4net_Core_MethodItem.htm" target="">MethodItem</a></td><td><div class="summary">
            provides method information without actually referencing a System.Reflection.MethodBase
            as that would require that the containing assembly is loaded.
            </div></td></tr><tr data="class; public"><td><img src="./../icons/pubclass.gif" alt="Public class" title="Public class" /></td><td><a href="T_log4net_Core_SecurityContext.htm" target="">SecurityContext</a></td><td><div class="summary">
            A SecurityContext used by log4net when interacting with protected resources
            </div></td></tr><tr data="class; public"><td><img src="./../icons/pubclass.gif" alt="Public class" title="Public class" /></td><td><a href="T_log4net_Core_SecurityContextProvider.htm" target="">SecurityContextProvider</a></td><td><div class="summary">
            The <a href="T_log4net_Core_SecurityContextProvider.htm" target="">SecurityContextProvider</a> providers default <a href="T_log4net_Core_SecurityContext.htm" target="">SecurityContext</a> instances.
            </div></td></tr><tr data="class; public"><td><img src="./../icons/pubclass.gif" alt="Public class" title="Public class" /></td><td><a href="T_log4net_Core_StackFrameItem.htm" target="">StackFrameItem</a></td><td><div class="summary">
            provides stack frame information without actually referencing a System.Diagnostics.StackFrame
            as that would require that the containing assembly is loaded.
            </div></td></tr><tr data="class; public"><td><img src="./../icons/pubclass.gif" alt="Public class" title="Public class" /></td><td><a href="T_log4net_Core_TimeEvaluator.htm" target="">TimeEvaluator</a></td><td><div class="summary">
            An evaluator that triggers after specified number of seconds.
            </div></td></tr><tr data="class; public"><td><img src="./../icons/pubclass.gif" alt="Public class" title="Public class" /></td><td><a href="T_log4net_Core_WrapperMap.htm" target="">WrapperMap</a></td><td><div class="summary">
            Maps between logger objects and wrapper objects.
            </div></td></tr></table><div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Structures</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"></div><table id="typeList" class="members"><tr><th class="ps_iconColumn">
					 
				</th><th class="ps_nameColumn">Structure</th><th class="ps_descriptionColumn">Description</th></tr><tr data="structure; public"><td><img src="./../icons/pubstructure.gif" alt="Public structure" title="Public structure" /></td><td><a href="T_log4net_Core_LoggingEventData.htm" target="">LoggingEventData</a></td><td><div class="summary">
            Portable data structure used by <a href="T_log4net_Core_LoggingEvent.htm" target="">LoggingEvent</a></div></td></tr></table><div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Interfaces</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"></div><table id="typeList" class="members"><tr><th class="ps_iconColumn">
					 
				</th><th class="ps_nameColumn">Interface</th><th class="ps_descriptionColumn">Description</th></tr><tr data="interface; public"><td><img src="./../icons/pubinterface.gif" alt="Public interface" title="Public interface" /></td><td><a href="T_log4net_Core_IAppenderAttachable.htm" target="">IAppenderAttachable</a></td><td><div class="summary">
            Interface for attaching appenders to objects.
            </div></td></tr><tr data="interface; public"><td><img src="./../icons/pubinterface.gif" alt="Public interface" title="Public interface" /></td><td><a href="T_log4net_Core_IErrorHandler.htm" target="">IErrorHandler</a></td><td><div class="summary">
            Appenders may delegate their error handling to an <a href="T_log4net_Core_IErrorHandler.htm" target="">IErrorHandler</a>.
            </div></td></tr><tr data="interface; public"><td><img src="./../icons/pubinterface.gif" alt="Public interface" title="Public interface" /></td><td><a href="T_log4net_Core_IFixingRequired.htm" target="">IFixingRequired</a></td><td><div class="summary">
            Interface for objects that require fixing.
            </div></td></tr><tr data="interface; public"><td><img src="./../icons/pubinterface.gif" alt="Public interface" title="Public interface" /></td><td><a href="T_log4net_Core_ILogger.htm" target="">ILogger</a></td><td><div class="summary">
            Interface that all loggers implement
            </div></td></tr><tr data="interface; public"><td><img src="./../icons/pubinterface.gif" alt="Public interface" title="Public interface" /></td><td><a href="T_log4net_Core_ILoggerWrapper.htm" target="">ILoggerWrapper</a></td><td><div class="summary">
            Base interface for all wrappers
            </div></td></tr><tr data="interface; public"><td><img src="./../icons/pubinterface.gif" alt="Public interface" title="Public interface" /></td><td><a href="T_log4net_Core_IOptionHandler.htm" target="">IOptionHandler</a></td><td><div class="summary">
            Interface used to delay activate a configured object.
            </div></td></tr><tr data="interface; public"><td><img src="./../icons/pubinterface.gif" alt="Public interface" title="Public interface" /></td><td><a href="T_log4net_Core_IRepositorySelector.htm" target="">IRepositorySelector</a></td><td><div class="summary">
            Interface used by the <a href="T_log4net_LogManager.htm" target="">LogManager</a> to select the <a href="T_log4net_Repository_ILoggerRepository.htm" target="">ILoggerRepository</a>.
            </div></td></tr><tr data="interface; public"><td><img src="./../icons/pubinterface.gif" alt="Public interface" title="Public interface" /></td><td><a href="T_log4net_Core_ITriggeringEventEvaluator.htm" target="">ITriggeringEventEvaluator</a></td><td><div class="summary">
            Test if an <a href="T_log4net_Core_LoggingEvent.htm" target="">LoggingEvent</a> triggers an action
            </div></td></tr><tr data="interface; public"><td><img src="./../icons/pubinterface.gif" alt="Public interface" title="Public interface" /></td><td><a href="T_log4net_Core_LevelCollection_ILevelCollectionEnumerator.htm" target="">LevelCollection<span id="ID0EBABAACAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EBABAACAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
				</script>ILevelCollectionEnumerator</a></td><td><div class="summary">
            Supports type-safe iteration over a <a href="T_log4net_Core_LevelCollection.htm" target="">LevelCollection</a>.
            </div></td></tr></table><div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Delegates</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"></div><table id="typeList" class="members"><tr><th class="ps_iconColumn">
					 
				</th><th class="ps_nameColumn">Delegate</th><th class="ps_descriptionColumn">Description</th></tr><tr data="delegate; public"><td><img src="./../icons/pubdelegate.gif" alt="Public delegate" title="Public delegate" /></td><td><a href="T_log4net_Core_LoggerRepositoryCreationEventHandler.htm" target="">LoggerRepositoryCreationEventHandler</a></td><td><div class="summary">
            Delegate used to handle logger repository creation event notifications
            </div></td></tr><tr data="delegate; public"><td><img src="./../icons/pubdelegate.gif" alt="Public delegate" title="Public delegate" /></td><td><a href="T_log4net_Core_WrapperCreationHandler.htm" target="">WrapperCreationHandler</a></td><td><div class="summary">
            Delegate used to handle creation of new wrappers.
            </div></td></tr></table><div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Enumerations</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"></div><table id="typeList" class="members"><tr><th class="ps_iconColumn">
					 
				</th><th class="ps_nameColumn">Enumeration</th><th class="ps_descriptionColumn">Description</th></tr><tr data="enumeration; public"><td><img src="./../icons/pubenumeration.gif" alt="Public enumeration" title="Public enumeration" /></td><td><a href="T_log4net_Core_ErrorCode.htm" target="">ErrorCode</a></td><td><div class="summary">
            Defined error codes that can be passed to the <span class="nolink">[M:IErrorHandler.Error(string, Exception, ErrorCode)]</span> method.
            </div></td></tr><tr data="enumeration; public"><td><img src="./../icons/pubenumeration.gif" alt="Public enumeration" title="Public enumeration" /></td><td><a href="T_log4net_Core_FixFlags.htm" target="">FixFlags</a></td><td><div class="summary">
            Flags passed to the <a href="P_log4net_Core_LoggingEvent_Fix.htm" target="">Fix</a> property
            </div></td></tr><tr data="enumeration; public"><td><img src="./../icons/protenumeration.gif" alt="Protected enumeration" title="Protected enumeration" /></td><td><a href="T_log4net_Core_LevelCollection_Tag.htm" target="">LevelCollection<span id="ID0EBABAAAAAAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EBABAAAAAAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
				</script>Tag</a></td><td><div class="summary">
            Type visible only to our subclasses
            Used to access protected constructor
            </div></td></tr></table></div></div></div></div><div id="OH_footer" class="OH_footer"><p>Apache log4net, Apache and log4net are trademarks of The Apache Software Foundation.</p><p><a href="http://logging.apache.org/log4net/" target="_blank"><img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /> 
						Copyright 2004-2015 The Apache Software Foundation (http://logging.apache.org/log4net/)</a></p><div class="OH_feedbacklink"><a href="mailto:http://logging.apache.org/log4net/mail-lists.html?subject=Apache+log4net%e2%84%a2+SDK+Documentation+log4net.Core+Namespace+100+EN-US&amp;body=Your%20feedback%20is%20used%20to%20improve%20the%20documentation%20and%20the%20product.%20Your%20e-mail%20address%20will%20not%20be%20used%20for%20any%20other%20purpose%20and%20is%20disposed%20of%20after%20the%20issue%20you%20report%20is%20resolved.%20While%20working%20to%20resolve%20the%20issue%20that%20you%20report%2c%20you%20may%20be%20contacted%20via%20e-mail%20to%20get%20further%20details%20or%20clarification%20on%20the%20feedback%20you%20sent.%20After%20the%20issue%20you%20report%20has%20been%20addressed%2c%20you%20may%20receive%20an%20e-mail%20to%20let%20you%20know%20that%20your%20feedback%20has%20been%20addressed.">Send Feedback</a> on this topic to http://logging.apache.org/log4net/mail-lists.html.</div></div></body></html>