# C1.DataCollection.C1HierarchicalDataCollection-1.InsertAsync

## Content

<div class="doc-site-dotnet-api-container">



<h1 id="C1_DataCollection_C1HierarchicalDataCollection_1_InsertAsync_" data-uid="C1.DataCollection.C1HierarchicalDataCollection`1.InsertAsync*">InsertAsync Method
</h1>
<div class="markdown level0 summary"></div>
<div class="markdown level0 conceptual"></div>



<a id="C1_DataCollection_C1HierarchicalDataCollection_1_InsertAsync_" data-uid="C1.DataCollection.C1HierarchicalDataCollection`1.InsertAsync*"></a>
<h4 id="C1_DataCollection_C1HierarchicalDataCollection_1_InsertAsync_System_Int32__0_System_Threading_CancellationToken_" data-uid="C1.DataCollection.C1HierarchicalDataCollection`1.InsertAsync(System.Int32,`0,System.Threading.CancellationToken)">InsertAsync(int, T, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Inserts the specified <code class="paramref">item</code> at the specified <code class="paramref">index</code> in the collection.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="declaration">Declaration</h5>
<div class="codewrapper">
  <pre><code class="lang-csharp hljs">public virtual Task&lt;int&gt; InsertAsync(int index, T item, CancellationToken cancellationToken)</code></pre>
</div>
<div class="codewrapper">
  <pre><code class="lang-vbnet hljs">Public Overridable Function InsertAsync(index As Integer, item As T, cancellationToken As CancellationToken) As Task(Of Integer)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Type</th>
      <th>Name</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></td>
      <td><span class="parametername">index</span></td>
      <td><p>The index where the item will be inserted.</p>
</td>
    </tr>
    <tr>
      <td><span class="xref">T</span></td>
      <td><span class="parametername">item</span></td>
      <td><p>The item to be inserted.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.threading.cancellationtoken">CancellationToken</a></td>
      <td><span class="parametername">cancellationToken</span></td>
      <td><p>The cancellation token.</p>
</td>
    </tr>
  </tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Type</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.threading.tasks.task-1">Task</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a>&gt;</td>
      <td></td>
    </tr>
  </tbody>
</table>
<h5 class="implements">Implements</h5>
    <div><a class="xref" href="C1.DataCollection.ISupportEditing-1.InsertAsync.html#C1_DataCollection_ISupportEditing_1_InsertAsync_System_Int32__0_System_Threading_CancellationToken_">ISupportEditing&lt;T&gt;.InsertAsync(int, T, CancellationToken)</a></div>
</div>
