<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>LoggingEvent.GetProperties 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">LoggingEvent.GetProperties�Method�</h1>
      </div>
    </div>
    <div id="nstext">
      <p> Get all the composite properties in this event </p>
      <div class="syntax">
        <span class="lang">[Visual�Basic]</span>
        <br />Public�Function�GetProperties()�As�<a href="log4net.Util.PropertiesDictionary.html">PropertiesDictionary</a></div>
      <div class="syntax">
        <span class="lang">[C#]</span>
        <br />public�<a href="log4net.Util.PropertiesDictionary.html">PropertiesDictionary</a>�GetProperties();</div>
      <h4 class="dtH4">Return Value</h4>
      <p>the <a href="log4net.Util.PropertiesDictionary.html">PropertiesDictionary</a> containing all the properties</p>
      <h4 class="dtH4">Remarks</h4>
            <p> See <a href="log4net.Core.LoggingEvent.LookupProperty.html">LookupProperty</a> for details of the composite properties stored by the event. </p>
            <p> This method returns a single <a href="log4net.Util.PropertiesDictionary.html">PropertiesDictionary</a> containing all the properties defined for this event. </p>
            <h4 class="dtH4">See Also</h4><p><a href="log4net.Core.LoggingEvent.html">LoggingEvent 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="GetProperties method"></param><param name="Keyword" value="GetProperties method, LoggingEvent class"></param><param name="Keyword" value="LoggingEvent.GetProperties 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>
