<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link rel="canonical" href="https://ignite.apache.org/releases/2.1.0/dotnetdoc/class_apache_1_1_ignite_1_1_core_1_1_ignite_configuration_section.html" />
<META NAME="ROBOTS" CONTENT="NOINDEX">

<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>Apache Ignite.NET: Apache.Ignite.Core.IgniteConfigurationSection Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />

<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-61232409-1', 'auto');
  ga('send', 'pageview');

</script></head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="ignite_logo.png"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Apache Ignite.NET
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('class_apache_1_1_ignite_1_1_core_1_1_ignite_configuration_section.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#properties">Properties</a> &#124;
<a href="class_apache_1_1_ignite_1_1_core_1_1_ignite_configuration_section-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">Apache.Ignite.Core.IgniteConfigurationSection Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Ignite configuration section for app.config and web.config files.  
 <a href="class_apache_1_1_ignite_1_1_core_1_1_ignite_configuration_section.html#details">More...</a></p>
<div class="dynheader">
Inheritance diagram for Apache.Ignite.Core.IgniteConfigurationSection:</div>
<div class="dyncontent">
 <div class="center">
  <img src="class_apache_1_1_ignite_1_1_core_1_1_ignite_configuration_section.png" usemap="#Apache.Ignite.Core.IgniteConfigurationSection_map" alt=""/>
  <map id="Apache.Ignite.Core.IgniteConfigurationSection_map" name="Apache.Ignite.Core.IgniteConfigurationSection_map">
</map>
 </div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:ade541ebbfdec69ffb10722423f790fcd"><td class="memItemLeft" align="right" valign="top">override void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_ignite_configuration_section.html#ade541ebbfdec69ffb10722423f790fcd">DeserializeSection</a> (XmlReader reader)</td></tr>
<tr class="memdesc:ade541ebbfdec69ffb10722423f790fcd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads XML from the configuration file.  <a href="#ade541ebbfdec69ffb10722423f790fcd">More...</a><br /></td></tr>
<tr class="separator:ade541ebbfdec69ffb10722423f790fcd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa02463357afd9f2d14ed07d66860dc46"><td class="memItemLeft" align="right" valign="top">override string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_ignite_configuration_section.html#aa02463357afd9f2d14ed07d66860dc46">SerializeSection</a> (ConfigurationElement parentElement, string name, ConfigurationSaveMode saveMode)</td></tr>
<tr class="memdesc:aa02463357afd9f2d14ed07d66860dc46"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates an XML string containing an unmerged view of the ConfigurationSection object as a single section to write to a file.  <a href="#aa02463357afd9f2d14ed07d66860dc46">More...</a><br /></td></tr>
<tr class="separator:aa02463357afd9f2d14ed07d66860dc46"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="properties"></a>
Properties</h2></td></tr>
<tr class="memitem:a18055874cca90e94e12da0bf1df8113b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_ignite_configuration.html">IgniteConfiguration</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_ignite_configuration_section.html#a18055874cca90e94e12da0bf1df8113b">IgniteConfiguration</a><code> [get]</code></td></tr>
<tr class="memdesc:a18055874cca90e94e12da0bf1df8113b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets or sets the ignite configuration.  <a href="#a18055874cca90e94e12da0bf1df8113b">More...</a><br /></td></tr>
<tr class="separator:a18055874cca90e94e12da0bf1df8113b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"></div><h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="ade541ebbfdec69ffb10722423f790fcd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">override void Apache.Ignite.Core.IgniteConfigurationSection.DeserializeSection </td>
          <td>(</td>
          <td class="paramtype">XmlReader&#160;</td>
          <td class="paramname"><em>reader</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">reader</td><td>The reader object, which reads from the configuration file.</td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aa02463357afd9f2d14ed07d66860dc46"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">override string Apache.Ignite.Core.IgniteConfigurationSection.SerializeSection </td>
          <td>(</td>
          <td class="paramtype">ConfigurationElement&#160;</td>
          <td class="paramname"><em>parentElement</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">string&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ConfigurationSaveMode&#160;</td>
          <td class="paramname"><em>saveMode</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">parentElement</td><td>The ConfigurationElement instance to use as the parent when performing the un-merge.</td></tr>
    <tr><td class="paramname">name</td><td>The name of the section to create.</td></tr>
    <tr><td class="paramname">saveMode</td><td>The ConfigurationSaveMode instance to use when writing to a string.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>An XML string containing an unmerged view of the ConfigurationSection object. </dd></dl>

</div>
</div>
<h2 class="groupheader">Property Documentation</h2>
<a class="anchor" id="a18055874cca90e94e12da0bf1df8113b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_ignite_configuration.html">IgniteConfiguration</a> Apache.Ignite.Core.IgniteConfigurationSection.IgniteConfiguration</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>The ignite configuration. </p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="namespace_apache.html">Apache</a></li><li class="navelem"><a class="el" href="namespace_apache_1_1_ignite.html">Ignite</a></li><li class="navelem"><a class="el" href="namespace_apache_1_1_ignite_1_1_core.html">Core</a></li><li class="navelem"><a class="el" href="class_apache_1_1_ignite_1_1_core_1_1_ignite_configuration_section.html">IgniteConfigurationSection</a></li>
    <li class="footer">Generated on Thu Jul 20 2017 19:19:55 for Apache Ignite.NET by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
  </ul>
</div>
</body>
</html>
