﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
<link rel="canonical" href="https://ignite.apache.org/releases/2.4.0/dotnetdoc/api/Apache.Ignite.AspNet.IgniteOutputCacheProvider.html" />
<META NAME="ROBOTS" CONTENT="NOINDEX">

    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Class IgniteOutputCacheProvider
   | Apache Ignite.NET </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Class IgniteOutputCacheProvider
   | Apache Ignite.NET ">
    <meta name="generator" content="docfx 2.24.0.0">
    
    <link rel="shortcut icon" href="../images/favicon.ico">
    <link rel="stylesheet" href="../styles/docfx.vendor.css">
    <link rel="stylesheet" href="../styles/docfx.css">
    <link rel="stylesheet" href="../styles/main.css">
    <meta property="docfx:navrel" content="../toc.html">
    <meta property="docfx:tocrel" content="toc.html">
    
    <meta property="docfx:rel" content="../">
    
  
<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 data-spy="scroll" data-target="#affix">
    <div id="wrapper">
      <header>
        
        <nav id="autocollapse" class="navbar navbar-inverse ng-scope" role="navigation">
          <div class="container">
            <div class="navbar-header">
              <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
              </button>
              
              <a class="navbar-brand" href="../index.html">
                <img id="logo" class="svg" src="../images/logo_ignite_32_32.png" alt="">
              </a>
            </div>
            <div class="collapse navbar-collapse" id="navbar">
              <form class="navbar-form navbar-right" role="search" id="search">
                <div class="form-group">
                  <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
                </div>
              </form>
            </div>
          </div>
        </nav>
        
        <div class="subnav navbar navbar-default">
          <div class="container hide-when-search" id="breadcrumb">
            <ul class="breadcrumb">
              <li></li>
            </ul>
          </div>
        </div>
      </header>
      <div class="container body-content">
        
        <div id="search-results">
          <div class="search-list"></div>
          <div class="sr-items"></div>
          <ul id="pagination"></ul>
        </div>
      </div>
      <div role="main" class="container body-content hide-when-search">
        
        <div class="sidenav hide-when-search">
          <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
          <div class="sidetoggle collapse" id="sidetoggle">
            <div id="sidetoc"></div>
          </div>
        </div>
        <div class="article row grid-right">
          <div class="col-md-10">
            <article class="content wrap" id="_content" data-uid="Apache.Ignite.AspNet.IgniteOutputCacheProvider">
  
  
  <h1 id="Apache_Ignite_AspNet_IgniteOutputCacheProvider" data-uid="Apache.Ignite.AspNet.IgniteOutputCacheProvider" class="text-break">Class IgniteOutputCacheProvider
  </h1>
  <div class="markdown level0 summary"><p>ASP.NET output cache provider that uses Ignite cache as a storage.
<p>
You can either start Ignite yourself, and provide <code>gridName</code> attribute, 
or provide <code>igniteConfigurationSectionName</code> attribute to start Ignite automatically from specified
configuration section (see <a class="xref" href="Apache.Ignite.Core.IgniteConfigurationSection.html">IgniteConfigurationSection</a>) 
using <code>igniteConfigurationSectionName</code>.
<p>
<code>cacheName</code> attribute specifies Ignite cache name to use for data storage. This attribute can be omitted 
if cache name is null.</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritance">
    <h5>Inheritance</h5>
    <div class="level0"><span class="xref">System.Object</span></div>
    <div class="level1"><span class="xref">System.Configuration.Provider.ProviderBase</span></div>
    <div class="level2"><span class="xref">System.Web.Caching.OutputCacheProvider</span></div>
    <div class="level3"><span class="xref">IgniteOutputCacheProvider</span></div>
  </div>
  <div class="inheritedMembers">
    <h5>Inherited Members</h5>
    <div>
      <span class="xref">System.Configuration.Provider.ProviderBase.Name</span>
    </div>
    <div>
      <span class="xref">System.Configuration.Provider.ProviderBase.Description</span>
    </div>
    <div>
      <span class="xref">System.Object.ToString()</span>
    </div>
    <div>
      <span class="xref">System.Object.Equals(System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.Equals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.ReferenceEquals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.GetHashCode()</span>
    </div>
    <div>
      <span class="xref">System.Object.GetType()</span>
    </div>
    <div>
      <span class="xref">System.Object.MemberwiseClone()</span>
    </div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="Apache.Ignite.AspNet.html">Apache.Ignite.AspNet</a></h6>
  <h6><strong>Assembly</strong>: Apache.Ignite.AspNet.dll</h6>
  <h5 id="Apache_Ignite_AspNet_IgniteOutputCacheProvider_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public class IgniteOutputCacheProvider : OutputCacheProvider</code></pre>
  </div>
  <h3 id="methods">Methods
  </h3>
  <a id="Apache_Ignite_AspNet_IgniteOutputCacheProvider_Add_" data-uid="Apache.Ignite.AspNet.IgniteOutputCacheProvider.Add*"></a>
  <h4 id="Apache_Ignite_AspNet_IgniteOutputCacheProvider_Add_System_String_System_Object_System_DateTime_" data-uid="Apache.Ignite.AspNet.IgniteOutputCacheProvider.Add(System.String,System.Object,System.DateTime)">Add(String, Object, DateTime)</h4>
  <div class="markdown level1 summary"><p>Inserts the specified entry into the output cache.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public override object Add(string key, object entry, DateTime utcExpiry)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">key</span></td>
        <td><p>A unique identifier for <code data-dev-comment-type="paramref" class="paramref">entry</code>.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Object</span></td>
        <td><span class="parametername">entry</span></td>
        <td><p>The content to add to the output cache.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.DateTime</span></td>
        <td><span class="parametername">utcExpiry</span></td>
        <td><p>The time and date on which the cached entry expires.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Object</span></td>
        <td><p>A reference to the specified provider.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><span class="xref">System.Web.Caching.OutputCacheProvider.Add(System.String, System.Object, System.DateTime)</span></div>
  <a id="Apache_Ignite_AspNet_IgniteOutputCacheProvider_Get_" data-uid="Apache.Ignite.AspNet.IgniteOutputCacheProvider.Get*"></a>
  <h4 id="Apache_Ignite_AspNet_IgniteOutputCacheProvider_Get_System_String_" data-uid="Apache.Ignite.AspNet.IgniteOutputCacheProvider.Get(System.String)">Get(String)</h4>
  <div class="markdown level1 summary"><p>Returns a reference to the specified entry in the output cache.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public override object Get(string key)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">key</span></td>
        <td><p>A unique identifier for a cached entry in the output cache.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Object</span></td>
        <td><p>The <code data-dev-comment-type="paramref" class="paramref">key</code> value that identifies the specified entry in the cache, or null if the specified entry is not in the cache.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><span class="xref">System.Web.Caching.OutputCacheProvider.Get(System.String)</span></div>
  <a id="Apache_Ignite_AspNet_IgniteOutputCacheProvider_Initialize_" data-uid="Apache.Ignite.AspNet.IgniteOutputCacheProvider.Initialize*"></a>
  <h4 id="Apache_Ignite_AspNet_IgniteOutputCacheProvider_Initialize_System_String_System_Collections_Specialized_NameValueCollection_" data-uid="Apache.Ignite.AspNet.IgniteOutputCacheProvider.Initialize(System.String,System.Collections.Specialized.NameValueCollection)">Initialize(String, NameValueCollection)</h4>
  <div class="markdown level1 summary"><p>Initializes the provider.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public override void Initialize(string name, NameValueCollection config)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">name</span></td>
        <td><p>The friendly name of the provider.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Collections.Specialized.NameValueCollection</span></td>
        <td><span class="parametername">config</span></td>
        <td><p>A collection of the name/value pairs representing the provider-specific attributes specified in the configuration for this provider.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><span class="xref">System.Configuration.Provider.ProviderBase.Initialize(System.String, System.Collections.Specialized.NameValueCollection)</span></div>
  <a id="Apache_Ignite_AspNet_IgniteOutputCacheProvider_Remove_" data-uid="Apache.Ignite.AspNet.IgniteOutputCacheProvider.Remove*"></a>
  <h4 id="Apache_Ignite_AspNet_IgniteOutputCacheProvider_Remove_System_String_" data-uid="Apache.Ignite.AspNet.IgniteOutputCacheProvider.Remove(System.String)">Remove(String)</h4>
  <div class="markdown level1 summary"><p>Removes the specified entry from the output cache.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public override void Remove(string key)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">key</span></td>
        <td><p>The unique identifier for the entry to remove from the output cache.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><span class="xref">System.Web.Caching.OutputCacheProvider.Remove(System.String)</span></div>
  <a id="Apache_Ignite_AspNet_IgniteOutputCacheProvider_Set_" data-uid="Apache.Ignite.AspNet.IgniteOutputCacheProvider.Set*"></a>
  <h4 id="Apache_Ignite_AspNet_IgniteOutputCacheProvider_Set_System_String_System_Object_System_DateTime_" data-uid="Apache.Ignite.AspNet.IgniteOutputCacheProvider.Set(System.String,System.Object,System.DateTime)">Set(String, Object, DateTime)</h4>
  <div class="markdown level1 summary"><p>Inserts the specified entry into the output cache, overwriting the entry if it is already cached.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public override void Set(string key, object entry, DateTime utcExpiry)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">key</span></td>
        <td><p>A unique identifier for <code data-dev-comment-type="paramref" class="paramref">entry</code>.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Object</span></td>
        <td><span class="parametername">entry</span></td>
        <td><p>The content to add to the output cache.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.DateTime</span></td>
        <td><span class="parametername">utcExpiry</span></td>
        <td><p>The time and date on which the cached <code data-dev-comment-type="paramref" class="paramref">entry</code> expires.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><span class="xref">System.Web.Caching.OutputCacheProvider.Set(System.String, System.Object, System.DateTime)</span></div>
</article>
          </div>
          
          <div class="hidden-sm col-md-2" role="complementary">
            <div class="sideaffix">
              <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
              <!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
              </nav>
            </div>
          </div>
        </div>
      </div>
      
      <footer>
        <div class="grad-bottom"></div>
        <div class="footer">
          <div class="container">
            <span class="pull-right">
              <a href="#top">Back to top</a>
            </span>
            © 2015 - 2018 The Apache Software Foundation
            
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="../styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="../styles/docfx.js"></script>
    <script type="text/javascript" src="../styles/main.js"></script>
  </body>
</html>
