# GrapeCity.Enterprise.Data.Expressions.Tools.EnumerableExtensions.ZipEx

## Content

<div class="doc-site-dotnet-api-container">



<h1 id="GrapeCity_Enterprise_Data_Expressions_Tools_EnumerableExtensions_ZipEx_" data-uid="GrapeCity.Enterprise.Data.Expressions.Tools.EnumerableExtensions.ZipEx*">ZipEx Method
</h1>
<div class="markdown level0 summary"></div>
<div class="markdown level0 conceptual"></div>



<a id="GrapeCity_Enterprise_Data_Expressions_Tools_EnumerableExtensions_ZipEx_" data-uid="GrapeCity.Enterprise.Data.Expressions.Tools.EnumerableExtensions.ZipEx*"></a>
<h4 id="GrapeCity_Enterprise_Data_Expressions_Tools_EnumerableExtensions_ZipEx__3_System_Collections_Generic_IEnumerable___0__System_Collections_Generic_IEnumerable___1__System_Func___0___1___2__" data-uid="GrapeCity.Enterprise.Data.Expressions.Tools.EnumerableExtensions.ZipEx``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``1,``2})">ZipEx&lt;T1, T2, TR&gt;(IEnumerable&lt;T1&gt;, IEnumerable&lt;T2&gt;, Func&lt;T1, T2, TR&gt;)</h4>
<div class="markdown level1 summary"><p>Applies a specified function to the corresponding elements of two sequences, producing a sequence of the results</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="declaration">Declaration</h5>
<div class="codewrapper">
  <pre><code class="lang-csharp hljs">public static IEnumerable&lt;TR&gt; ZipEx&lt;T1, T2, TR&gt;(this IEnumerable&lt;T1&gt; first, IEnumerable&lt;T2&gt; second, Func&lt;T1, T2, TR&gt; selector)</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.collections.generic.ienumerable-1">IEnumerable</a>&lt;T1&gt;</td>
      <td><span class="parametername">first</span></td>
      <td><p>The first sequence to merge</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.collections.generic.ienumerable-1">IEnumerable</a>&lt;T2&gt;</td>
      <td><span class="parametername">second</span></td>
      <td><p>The second sequence to merge</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.func-3">Func</a>&lt;T1, T2, TR&gt;</td>
      <td><span class="parametername">selector</span></td>
      <td><p>A function that specifies how to merge the elements from the two sequences</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.collections.generic.ienumerable-1">IEnumerable</a>&lt;TR&gt;</td>
      <td><p>An <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.collections.generic.ienumerable-1">IEnumerable&lt;T&gt;</a> that contains merged elements of two input sequences</p>
</td>
    </tr>
  </tbody>
</table>
<h5 class="typeParameters">Type Parameters</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Name</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><span class="parametername">T1</span></td>
      <td><p>The type of the elements of the first input sequence</p>
</td>
    </tr>
    <tr>
      <td><span class="parametername">T2</span></td>
      <td><p>The type of the elements of the second input sequence</p>
</td>
    </tr>
    <tr>
      <td><span class="parametername">TR</span></td>
      <td><p>The type of the elements of the result sequence</p>
</td>
    </tr>
  </tbody>
</table>


<a id="GrapeCity_Enterprise_Data_Expressions_Tools_EnumerableExtensions_ZipEx_" data-uid="GrapeCity.Enterprise.Data.Expressions.Tools.EnumerableExtensions.ZipEx*"></a>
<h4 id="GrapeCity_Enterprise_Data_Expressions_Tools_EnumerableExtensions_ZipEx__3_System_Collections_Generic_IEnumerable___0__System_Collections_Generic_IEnumerable___1__System_Func_System_Int32___0___1___2__" data-uid="GrapeCity.Enterprise.Data.Expressions.Tools.EnumerableExtensions.ZipEx``3(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1},System.Func{System.Int32,``0,``1,``2})">ZipEx&lt;T1, T2, TR&gt;(IEnumerable&lt;T1&gt;, IEnumerable&lt;T2&gt;, Func&lt;int, T1, T2, TR&gt;)</h4>
<div class="markdown level1 summary"><p>Applies a specified function to the corresponding elements of two sequences, producing a sequence of the results</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="declaration">Declaration</h5>
<div class="codewrapper">
  <pre><code class="lang-csharp hljs">public static IEnumerable&lt;TR&gt; ZipEx&lt;T1, T2, TR&gt;(this IEnumerable&lt;T1&gt; first, IEnumerable&lt;T2&gt; second, Func&lt;int, T1, T2, TR&gt; selector)</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.collections.generic.ienumerable-1">IEnumerable</a>&lt;T1&gt;</td>
      <td><span class="parametername">first</span></td>
      <td><p>The first sequence to merge</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.collections.generic.ienumerable-1">IEnumerable</a>&lt;T2&gt;</td>
      <td><span class="parametername">second</span></td>
      <td><p>The second sequence to merge</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.func-4">Func</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a>, T1, T2, TR&gt;</td>
      <td><span class="parametername">selector</span></td>
      <td><p>A function that specifies how to merge the elements from the two sequences</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.collections.generic.ienumerable-1">IEnumerable</a>&lt;TR&gt;</td>
      <td><p>An <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.collections.generic.ienumerable-1">IEnumerable&lt;T&gt;</a> that contains merged elements of two input sequences</p>
</td>
    </tr>
  </tbody>
</table>
<h5 class="typeParameters">Type Parameters</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Name</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><span class="parametername">T1</span></td>
      <td><p>The type of the elements of the first input sequence</p>
</td>
    </tr>
    <tr>
      <td><span class="parametername">T2</span></td>
      <td><p>The type of the elements of the second input sequence</p>
</td>
    </tr>
    <tr>
      <td><span class="parametername">TR</span></td>
      <td><p>The type of the elements of the result sequence</p>
</td>
    </tr>
  </tbody>
</table>
</div>
