﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
<link rel="canonical" href="https://ignite.apache.org/releases/2.7.0/dotnetdoc/api/Apache.Ignite.Core.Transactions.ITransactionCollection.html" />
<META NAME="ROBOTS" CONTENT="NOINDEX">

    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Interface ITransactionCollection
   | Apache Ignite.NET </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Interface ITransactionCollection
   | 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.Core.Transactions.ITransactionCollection">
  
  
  <h1 id="Apache_Ignite_Core_Transactions_ITransactionCollection" data-uid="Apache.Ignite.Core.Transactions.ITransactionCollection" class="text-break">Interface ITransactionCollection
  </h1>
  <div class="markdown level0 summary"><p>Disposable readonly collection of <a class="xref" href="Apache.Ignite.Core.Transactions.ITransaction.html">ITransaction</a></p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritedMembers">
    <h5>Inherited Members</h5>
    <div>
      <span class="xref">System.Collections.Generic.ICollection&lt;Apache.Ignite.Core.Transactions.ITransaction&gt;.Add(Apache.Ignite.Core.Transactions.ITransaction)</span>
    </div>
    <div>
      <span class="xref">System.Collections.Generic.ICollection&lt;Apache.Ignite.Core.Transactions.ITransaction&gt;.Clear()</span>
    </div>
    <div>
      <span class="xref">System.Collections.Generic.ICollection&lt;Apache.Ignite.Core.Transactions.ITransaction&gt;.Contains(Apache.Ignite.Core.Transactions.ITransaction)</span>
    </div>
    <div>
      <span class="xref">System.Collections.Generic.ICollection&lt;Apache.Ignite.Core.Transactions.ITransaction&gt;.CopyTo(Apache.Ignite.Core.Transactions.ITransaction[], System.Int32)</span>
    </div>
    <div>
      <span class="xref">System.Collections.Generic.ICollection&lt;Apache.Ignite.Core.Transactions.ITransaction&gt;.Remove(Apache.Ignite.Core.Transactions.ITransaction)</span>
    </div>
    <div>
      <span class="xref">System.Collections.Generic.ICollection&lt;Apache.Ignite.Core.Transactions.ITransaction&gt;.Count</span>
    </div>
    <div>
      <span class="xref">System.Collections.Generic.ICollection&lt;Apache.Ignite.Core.Transactions.ITransaction&gt;.IsReadOnly</span>
    </div>
    <div>
      <span class="xref">System.Collections.Generic.IEnumerable&lt;Apache.Ignite.Core.Transactions.ITransaction&gt;.GetEnumerator()</span>
    </div>
    <div>
      <span class="xref">System.IDisposable.Dispose()</span>
    </div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="Apache.Ignite.Core.Transactions.html">Apache.Ignite.Core.Transactions</a></h6>
  <h6><strong>Assembly</strong>: Apache.Ignite.Core.dll</h6>
  <h5 id="Apache_Ignite_Core_Transactions_ITransactionCollection_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public interface ITransactionCollection : ICollection&lt;ITransaction&gt;, IEnumerable&lt;ITransaction&gt;, IEnumerable, IDisposable</code></pre>
  </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>
