<?xml version="1.0" encoding="utf-8"?>
<Type Name="Queryable" FullName="System.Linq.Queryable">
  <TypeSignature Language="C#" Value="public static class Queryable" />
  <TypeSignature Language="ILAsm" Value=".class public auto ansi abstract sealed beforefieldinit Queryable extends System.Object" />
  <AssemblyInfo>
    <AssemblyName>System.Core</AssemblyName>
    <AssemblyVersion>3.5.0.0</AssemblyVersion>
    <AssemblyVersion>4.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <Base>
    <BaseTypeName>System.Object</BaseTypeName>
  </Base>
  <Interfaces />
  <Docs>
    <remarks>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>The set of methods declared in the <see cref="T:System.Linq.Queryable" /> class provides an implementation of the standard query operators for querying data sources that implement <see cref="T:System.Linq.IQueryable`1" />. The standard query operators are general purpose methods that follow the vbteclinq pattern and enable you to express traversal, filter, and projection operations over data in any .NET-based programming language.</para>
      <para>The majority of the methods in this class are defined as extension methods that extend the <see cref="T:System.Linq.IQueryable`1" /> type. This means they can be called like an instance method on any object that implements <see cref="T:System.Linq.IQueryable`1" />. These methods that extend <see cref="T:System.Linq.IQueryable`1" /> do not perform any querying directly. Instead, their functionality is to build an <see cref="T:System.Linq.Expressions.Expression" /> object, which is an expression tree that represents the cumulative query. The methods then pass the new expression tree to either the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method or the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the input <see cref="T:System.Linq.IQueryable`1" />. The method that is called depends on whether the <see cref="T:System.Linq.Queryable" /> method returns a singleton value, in which case <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> is called, or has enumerable results, in which case <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> is called.</para>
      <para>The actual query execution on the target data is performed by a class that implements <see cref="T:System.Linq.IQueryable`1" />. The expectation of any <see cref="T:System.Linq.IQueryable`1" /> implementation is that the result of executing an expression tree that was constructed by a <see cref="T:System.Linq.Queryable" /> standard query operator method is equivalent to the result of calling the corresponding method in the <see cref="T:System.Linq.Enumerable" /> class, if the data source were an <see cref="T:System.Collections.Generic.IEnumerable`1" />.</para>
      <para>In addition to the standard query operator methods that operate on <see cref="T:System.Linq.IQueryable`1" /> objects, this class also contains a method, <see cref="Overload:System.Linq.Queryable.AsQueryable" />, which types <see cref="T:System.Collections.IEnumerable" /> objects as <see cref="T:System.Linq.IQueryable" /> objects.</para>
    </remarks>
    <summary>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>Provides a set of static (Shared in Visual Basic) methods for querying data structures that implement <see cref="T:System.Linq.IQueryable`1" />.</para>
    </summary>
  </Docs>
  <Members>
    <Member MemberName="Aggregate&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static TSource Aggregate&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TSource,TSource&gt;&gt; func);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TSource Aggregate&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`3&lt;!!TSource, !!TSource, !!TSource&gt;&gt; func) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TSource</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="func" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TSource,TSource&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Aggregate``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``0,``0}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Aggregate``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``0,``0}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Aggregate``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``0,``0}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that the specified function, <paramref name="func" />, is applied to each value in the source sequence and the accumulated value is returned. The first value in <paramref name="source" /> is used as the seed value for the accumulated value, which corresponds to the first parameter in <paramref name="func" />.</para>
          <para>To simplify common aggregation operations, the set of standard query operators also includes two counting methods, <see cref="M:System.Linq.Queryable.Count``1(System.Linq.IQueryable{``0})" /> and <see cref="M:System.Linq.Queryable.LongCount``1(System.Linq.IQueryable{``0})" />, and four numeric aggregation methods, namely <see cref="M:System.Linq.Queryable.Max``1(System.Linq.IQueryable{``0})" />, <see cref="M:System.Linq.Queryable.Min``1(System.Linq.IQueryable{``0})" />, <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Decimal})" />, and <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Decimal})" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Applies an accumulator function over a sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The final accumulator value.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence to aggregate over.</param>
        <param name="func">
          <attribution license="cc4" from="Microsoft" modified="false" />An accumulator function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Aggregate&lt;TSource,TAccumulate&gt;">
      <MemberSignature Language="C#" Value="public static TAccumulate Aggregate&lt;TSource,TAccumulate&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, TAccumulate seed, System.Linq.Expressions.Expression&lt;Func&lt;TAccumulate,TSource,TAccumulate&gt;&gt; func);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TAccumulate Aggregate&lt;TSource, TAccumulate&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, !!TAccumulate seed, class System.Linq.Expressions.Expression`1&lt;class System.Func`3&lt;!!TAccumulate, !!TSource, !!TAccumulate&gt;&gt; func) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TAccumulate</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TAccumulate" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="seed" Type="TAccumulate" />
        <Parameter Name="func" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TAccumulate,TSource,TAccumulate&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Aggregate``2(System.Linq.IQueryable{``0},``1,System.Linq.Expressions.Expression{System.Func{``1,``0,``1}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Aggregate``2(System.Linq.IQueryable{``0},``1,System.Linq.Expressions.Expression{System.Func{``1,``0,``1}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Aggregate``2(System.Linq.IQueryable{``0},``1,System.Linq.Expressions.Expression{System.Func{``1,``0,``1}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that the specified function, <paramref name="func" />, is applied to each value in the source sequence and the accumulated value is returned. The <paramref name="seed" /> parameter is used as the seed value for the accumulated value, which corresponds to the first parameter in <paramref name="func" />.</para>
          <para>To simplify common aggregation operations, the set of standard query operators also includes two counting methods, <see cref="M:System.Linq.Queryable.Count``1(System.Linq.IQueryable{``0})" /> and <see cref="M:System.Linq.Queryable.LongCount``1(System.Linq.IQueryable{``0})" />, and four numeric aggregation methods, namely <see cref="M:System.Linq.Queryable.Max``1(System.Linq.IQueryable{``0})" />, <see cref="M:System.Linq.Queryable.Min``1(System.Linq.IQueryable{``0})" />, <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Decimal})" />, and <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Decimal})" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Applies an accumulator function over a sequence. The specified seed value is used as the initial accumulator value.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The final accumulator value.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence to aggregate over.</param>
        <param name="seed">
          <attribution license="cc4" from="Microsoft" modified="false" />The initial accumulator value.</param>
        <param name="func">
          <attribution license="cc4" from="Microsoft" modified="false" />An accumulator function to invoke on each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TAccumulate">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the accumulator value.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Aggregate&lt;TSource,TAccumulate,TResult&gt;">
      <MemberSignature Language="C#" Value="public static TResult Aggregate&lt;TSource,TAccumulate,TResult&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, TAccumulate seed, System.Linq.Expressions.Expression&lt;Func&lt;TAccumulate,TSource,TAccumulate&gt;&gt; func, System.Linq.Expressions.Expression&lt;Func&lt;TAccumulate,TResult&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TResult Aggregate&lt;TSource, TAccumulate, TResult&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, !!TAccumulate seed, class System.Linq.Expressions.Expression`1&lt;class System.Func`3&lt;!!TAccumulate, !!TSource, !!TAccumulate&gt;&gt; func, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TAccumulate, !!TResult&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TResult</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TAccumulate" />
        <TypeParameter Name="TResult" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="seed" Type="TAccumulate" />
        <Parameter Name="func" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TAccumulate,TSource,TAccumulate&gt;&gt;" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TAccumulate,TResult&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Aggregate``3(System.Linq.IQueryable{``0},``1,System.Linq.Expressions.Expression{System.Func{``1,``0,``1}},System.Linq.Expressions.Expression{System.Func{``1,``2}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Aggregate``3(System.Linq.IQueryable{``0},``1,System.Linq.Expressions.Expression{System.Func{``1,``0,``1}},System.Linq.Expressions.Expression{System.Func{``1,``2}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Aggregate``3(System.Linq.IQueryable{``0},``1,System.Linq.Expressions.Expression{System.Func{``1,``0,``1}},System.Linq.Expressions.Expression{System.Func{``1,``2}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that the specified function, <paramref name="func" />, is applied to each value in the source sequence and the accumulated value is returned. The <paramref name="seed" /> parameter is used as the seed value for the accumulated value, which corresponds to the first parameter in <paramref name="func" />. The final accumulated value is passed to <paramref name="selector" /> to obtain the result value.</para>
          <para>To simplify common aggregation operations, the set of standard query operators also includes two counting methods, <see cref="M:System.Linq.Queryable.Count``1(System.Linq.IQueryable{``0})" /> and <see cref="M:System.Linq.Queryable.LongCount``1(System.Linq.IQueryable{``0})" />, and four numeric aggregation methods, namely <see cref="M:System.Linq.Queryable.Max``1(System.Linq.IQueryable{``0})" />, <see cref="M:System.Linq.Queryable.Min``1(System.Linq.IQueryable{``0})" />, <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Decimal})" />, and <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Decimal})" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Applies an accumulator function over a sequence. The specified seed value is used as the initial accumulator value, and the specified function is used to select the result value.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The transformed final accumulator value.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence to aggregate over.</param>
        <param name="seed">
          <attribution license="cc4" from="Microsoft" modified="false" />The initial accumulator value.</param>
        <param name="func">
          <attribution license="cc4" from="Microsoft" modified="false" />An accumulator function to invoke on each element.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to transform the final accumulator value into the result value.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TAccumulate">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the accumulator value.</typeparam>
        <typeparam name="TResult">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the resulting value.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="All&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static bool All&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,bool&gt;&gt; predicate);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig bool All&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, bool&gt;&gt; predicate) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="predicate" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Boolean&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.All``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.All``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.All``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> depends on the implementation of the <paramref name="source" /> parameter's type. The expected behavior is that it determines if all the elements in <paramref name="source" /> satisfy the condition in <paramref name="predicate" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Determines whether all the elements of a sequence satisfy a condition.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>true if every element of the source sequence passes the test in the specified predicate, or if the sequence is empty; otherwise, false.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence whose elements to test for a condition.</param>
        <param name="predicate">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to test each element for a condition.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Any&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static bool Any&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig bool Any&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Any``1(System.Linq.IQueryable{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Any``1(System.Linq.IQueryable{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Any``1(System.Linq.IQueryable{``0})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it determines if <paramref name="source" /> contains any elements.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Determines whether a sequence contains any elements.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>true if the source sequence contains any elements; otherwise, false.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence to check for being empty.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Any&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static bool Any&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,bool&gt;&gt; predicate);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig bool Any&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, bool&gt;&gt; predicate) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="predicate" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Boolean&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Any``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Any``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Any``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it determines if any of the elements of <paramref name="source" /> satisfy the condition specified by <paramref name="predicate" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Determines whether any element of a sequence satisfies a condition.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>true if any elements in the source sequence pass the test in the specified predicate; otherwise, false.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence whose elements to test for a condition.</param>
        <param name="predicate">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to test each element for a condition.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="AsQueryable">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable AsQueryable (this System.Collections.IEnumerable source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable AsQueryable(class System.Collections.IEnumerable source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Collections.IEnumerable" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>If the type of <paramref name="source" /> implements <see cref="T:System.Linq.IQueryable`1" />, <see cref="M:System.Linq.Queryable.AsQueryable(System.Collections.IEnumerable)" /> returns it directly. Otherwise, it returns an <see cref="T:System.Linq.IQueryable`1" /> that executes queries by calling the equivalent query operator methods in <see cref="T:System.Linq.Enumerable" /> instead of those in <see cref="T:System.Linq.Queryable" />.</para>
          <para>This method assumes that <paramref name="source" /> implements <see cref="T:System.Collections.Generic.IEnumerable`1" /> for some <paramref name="T" />. At runtime, the result is of type <see cref="T:System.Linq.IQueryable`1" /> for the same <paramref name="T" />. This method is useful in dynamic scenarios when you do not statically know the type of <paramref name="T" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Converts an <see cref="T:System.Collections.IEnumerable" /> to an <see cref="T:System.Linq.IQueryable" />.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable" /> that represents the input sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence to convert.</param>
      </Docs>
    </Member>
    <Member MemberName="AsQueryable&lt;TElement&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TElement&gt; AsQueryable&lt;TElement&gt; (this System.Collections.Generic.IEnumerable&lt;TElement&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TElement&gt; AsQueryable&lt;TElement&gt;(class System.Collections.Generic.IEnumerable`1&lt;!!TElement&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TElement&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TElement" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Collections.Generic.IEnumerable&lt;TElement&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>If the type of <paramref name="source" /> implements <see cref="T:System.Linq.IQueryable`1" />, <see cref="M:System.Linq.Queryable.AsQueryable``1(System.Collections.Generic.IEnumerable{``0})" /> returns it directly. Otherwise, it returns an <see cref="T:System.Linq.IQueryable`1" /> that executes queries by calling the equivalent query operator methods in <see cref="T:System.Linq.Enumerable" /> instead of those in <see cref="T:System.Linq.Queryable" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Converts a generic <see cref="T:System.Collections.Generic.IEnumerable`1" /> to a generic <see cref="T:System.Linq.IQueryable`1" />.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that represents the input sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence to convert.</param>
        <typeparam name="TElement">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Average">
      <MemberSignature Language="C#" Value="public static decimal Average (this System.Linq.IQueryable&lt;decimal&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Decimal Average(class System.Linq.IQueryable`1&lt;valuetype System.Decimal&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Decimal</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;System.Decimal&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Decimal})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Decimal})" /> itself. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Decimal})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it calculates the average of the values in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the average of a sequence of <see cref="T:System.Decimal" /> values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The average of the sequence of values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of <see cref="T:System.Decimal" /> values to calculate the average of.</param>
      </Docs>
    </Member>
    <Member MemberName="Average">
      <MemberSignature Language="C#" Value="public static double Average (this System.Linq.IQueryable&lt;double&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig float64 Average(class System.Linq.IQueryable`1&lt;float64&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Double</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;System.Double&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Double})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Double})" /> itself. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Double})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it calculates the average of the values in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the average of a sequence of <see cref="T:System.Double" /> values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The average of the sequence of values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of <see cref="T:System.Double" /> values to calculate the average of.</param>
      </Docs>
    </Member>
    <Member MemberName="Average">
      <MemberSignature Language="C#" Value="public static double Average (this System.Linq.IQueryable&lt;int&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig float64 Average(class System.Linq.IQueryable`1&lt;int32&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Double</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;System.Int32&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Int32})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Int32})" /> itself. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Int32})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it calculates the average of the values in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the average of a sequence of <see cref="T:System.Int32" /> values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The average of the sequence of values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of <see cref="T:System.Int32" /> values to calculate the average of.</param>
      </Docs>
    </Member>
    <Member MemberName="Average">
      <MemberSignature Language="C#" Value="public static double Average (this System.Linq.IQueryable&lt;long&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig float64 Average(class System.Linq.IQueryable`1&lt;int64&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Double</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;System.Int64&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Int64})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Int64})" /> itself. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Int64})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it calculates the average of the values in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the average of a sequence of <see cref="T:System.Int64" /> values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The average of the sequence of values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of <see cref="T:System.Int64" /> values to calculate the average of.</param>
      </Docs>
    </Member>
    <Member MemberName="Average">
      <MemberSignature Language="C#" Value="public static Nullable&lt;decimal&gt; Average (this System.Linq.IQueryable&lt;Nullable&lt;decimal&gt;&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Nullable`1&lt;valuetype System.Decimal&gt; Average(class System.Linq.IQueryable`1&lt;valuetype System.Nullable`1&lt;valuetype System.Decimal&gt;&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Nullable&lt;System.Decimal&gt;</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;System.Nullable&lt;System.Decimal&gt;&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Nullable{System.Decimal}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Nullable{System.Decimal}})" /> itself. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Nullable{System.Decimal}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it calculates the average of the values in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the average of a sequence of nullable <see cref="T:System.Decimal" /> values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The average of the sequence of values, or null if the source sequence is empty or contains only null values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of nullable <see cref="T:System.Decimal" /> values to calculate the average of.</param>
      </Docs>
    </Member>
    <Member MemberName="Average">
      <MemberSignature Language="C#" Value="public static Nullable&lt;double&gt; Average (this System.Linq.IQueryable&lt;Nullable&lt;double&gt;&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Nullable`1&lt;float64&gt; Average(class System.Linq.IQueryable`1&lt;valuetype System.Nullable`1&lt;float64&gt;&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Nullable&lt;System.Double&gt;</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;System.Nullable&lt;System.Double&gt;&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Nullable{System.Double}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Nullable{System.Double}})" /> itself. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Nullable{System.Double}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it calculates the average of the values in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the average of a sequence of nullable <see cref="T:System.Double" /> values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The average of the sequence of values, or null if the source sequence is empty or contains only null values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of nullable <see cref="T:System.Double" /> values to calculate the average of.</param>
      </Docs>
    </Member>
    <Member MemberName="Average">
      <MemberSignature Language="C#" Value="public static Nullable&lt;double&gt; Average (this System.Linq.IQueryable&lt;Nullable&lt;int&gt;&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Nullable`1&lt;float64&gt; Average(class System.Linq.IQueryable`1&lt;valuetype System.Nullable`1&lt;int32&gt;&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Nullable&lt;System.Double&gt;</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;System.Nullable&lt;System.Int32&gt;&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Nullable{System.Int32}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Nullable{System.Int32}})" /> itself. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Nullable{System.Int32}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it calculates the average of the values in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the average of a sequence of nullable <see cref="T:System.Int32" /> values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The average of the sequence of values, or null if the source sequence is empty or contains only null values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of nullable <see cref="T:System.Int32" /> values to calculate the average of.</param>
      </Docs>
    </Member>
    <Member MemberName="Average">
      <MemberSignature Language="C#" Value="public static Nullable&lt;double&gt; Average (this System.Linq.IQueryable&lt;Nullable&lt;long&gt;&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Nullable`1&lt;float64&gt; Average(class System.Linq.IQueryable`1&lt;valuetype System.Nullable`1&lt;int64&gt;&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Nullable&lt;System.Double&gt;</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;System.Nullable&lt;System.Int64&gt;&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Nullable{System.Int64}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Nullable{System.Int64}})" /> itself. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Nullable{System.Int64}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it calculates the average of the values in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the average of a sequence of nullable <see cref="T:System.Int64" /> values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The average of the sequence of values, or null if the source sequence is empty or contains only null values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of nullable <see cref="T:System.Int64" /> values to calculate the average of.</param>
      </Docs>
    </Member>
    <Member MemberName="Average">
      <MemberSignature Language="C#" Value="public static Nullable&lt;float&gt; Average (this System.Linq.IQueryable&lt;Nullable&lt;float&gt;&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Nullable`1&lt;float32&gt; Average(class System.Linq.IQueryable`1&lt;valuetype System.Nullable`1&lt;float32&gt;&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Nullable&lt;System.Single&gt;</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;System.Nullable&lt;System.Single&gt;&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Nullable{System.Single}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Nullable{System.Single}})" /> itself. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Nullable{System.Single}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it calculates the average of the values in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the average of a sequence of nullable <see cref="T:System.Single" /> values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The average of the sequence of values, or null if the source sequence is empty or contains only null values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of nullable <see cref="T:System.Single" /> values to calculate the average of.</param>
      </Docs>
    </Member>
    <Member MemberName="Average">
      <MemberSignature Language="C#" Value="public static float Average (this System.Linq.IQueryable&lt;float&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig float32 Average(class System.Linq.IQueryable`1&lt;float32&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Single</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;System.Single&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Single})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Single})" /> itself. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Average(System.Linq.IQueryable{System.Single})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it calculates the average of the values in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the average of a sequence of <see cref="T:System.Single" /> values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The average of the sequence of values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of <see cref="T:System.Single" /> values to calculate the average of.</param>
      </Docs>
    </Member>
    <Member MemberName="Average&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static decimal Average&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,decimal&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Decimal Average&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, valuetype System.Decimal&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Decimal</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Decimal&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Decimal}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Decimal}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Decimal}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it calculates the average of the values in <paramref name="source" /> after invoking <paramref name="selector" /> on each value.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the average of a sequence of <see cref="T:System.Decimal" /> values that is obtained by invoking a projection function on each element of the input sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The average of the sequence of values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values that are used to calculate an average.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Average&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static double Average&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,double&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig float64 Average&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, float64&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Double</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Double&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Double}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Double}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Double}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it calculates the average of the values in <paramref name="source" /> after invoking <paramref name="selector" /> on each value.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the average of a sequence of <see cref="T:System.Double" /> values that is obtained by invoking a projection function on each element of the input sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The average of the sequence of values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to calculate the average of.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Average&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static double Average&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,int&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig float64 Average&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, int32&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Double</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Int32&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it calculates the average of the values in <paramref name="source" /> after invoking <paramref name="selector" /> on each value.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the average of a sequence of <see cref="T:System.Int32" /> values that is obtained by invoking a projection function on each element of the input sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The average of the sequence of values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to calculate the average of.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Average&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static double Average&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,long&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig float64 Average&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, int64&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Double</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Int64&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int64}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int64}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int64}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it calculates the average of the values in <paramref name="source" /> after invoking <paramref name="selector" /> on each value.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the average of a sequence of <see cref="T:System.Int64" /> values that is obtained by invoking a projection function on each element of the input sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The average of the sequence of values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to calculate the average of.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Average&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static Nullable&lt;decimal&gt; Average&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,Nullable&lt;decimal&gt;&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Nullable`1&lt;valuetype System.Decimal&gt; Average&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, valuetype System.Nullable`1&lt;valuetype System.Decimal&gt;&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Nullable&lt;System.Decimal&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Nullable&lt;System.Decimal&gt;&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Decimal}}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Decimal}}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Decimal}}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it calculates the average of the values in <paramref name="source" /> after invoking <paramref name="selector" /> on each value.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the average of a sequence of nullable <see cref="T:System.Decimal" /> values that is obtained by invoking a projection function on each element of the input sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The average of the sequence of values, or null if the <paramref name="source" /> sequence is empty or contains only null values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to calculate the average of.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Average&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static Nullable&lt;double&gt; Average&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,Nullable&lt;double&gt;&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Nullable`1&lt;float64&gt; Average&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, valuetype System.Nullable`1&lt;float64&gt;&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Nullable&lt;System.Double&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Nullable&lt;System.Double&gt;&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Double}}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Double}}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Double}}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it calculates the average of the values in <paramref name="source" /> after invoking <paramref name="selector" /> on each value.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the average of a sequence of nullable <see cref="T:System.Double" /> values that is obtained by invoking a projection function on each element of the input sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The average of the sequence of values, or null if the <paramref name="source" /> sequence is empty or contains only null values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to calculate the average of.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Average&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static Nullable&lt;double&gt; Average&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,Nullable&lt;int&gt;&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Nullable`1&lt;float64&gt; Average&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, valuetype System.Nullable`1&lt;int32&gt;&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Nullable&lt;System.Double&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Nullable&lt;System.Int32&gt;&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Int32}}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Int32}}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Int32}}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it calculates the average of the values in <paramref name="source" /> after invoking <paramref name="selector" /> on each value.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the average of a sequence of nullable <see cref="T:System.Int32" /> values that is obtained by invoking a projection function on each element of the input sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The average of the sequence of values, or null if the <paramref name="source" /> sequence is empty or contains only null values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to calculate the average of.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Average&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static Nullable&lt;double&gt; Average&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,Nullable&lt;long&gt;&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Nullable`1&lt;float64&gt; Average&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, valuetype System.Nullable`1&lt;int64&gt;&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Nullable&lt;System.Double&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Nullable&lt;System.Int64&gt;&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Int64}}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Int64}}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Int64}}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it calculates the average of the values in <paramref name="source" /> after invoking <paramref name="selector" /> on each value.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the average of a sequence of nullable <see cref="T:System.Int64" /> values that is obtained by invoking a projection function on each element of the input sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The average of the sequence of values, or null if the <paramref name="source" /> sequence is empty or contains only null values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to calculate the average of.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Average&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static Nullable&lt;float&gt; Average&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,Nullable&lt;float&gt;&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Nullable`1&lt;float32&gt; Average&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, valuetype System.Nullable`1&lt;float32&gt;&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Nullable&lt;System.Single&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Nullable&lt;System.Single&gt;&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Single}}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Single}}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Single}}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it calculates the average of the values in <paramref name="source" /> after invoking <paramref name="selector" /> on each value.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the average of a sequence of nullable <see cref="T:System.Single" /> values that is obtained by invoking a projection function on each element of the input sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The average of the sequence of values, or null if the <paramref name="source" /> sequence is empty or contains only null values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to calculate the average of.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Average&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static float Average&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,float&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig float32 Average&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, float32&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Single</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Single&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Single}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Single}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Average``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Single}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it calculates the average of the values in <paramref name="source" /> after invoking <paramref name="selector" /> on each value.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the average of a sequence of <see cref="T:System.Single" /> values that is obtained by invoking a projection function on each element of the input sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The average of the sequence of values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to calculate the average of.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Cast&lt;TResult&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TResult&gt; Cast&lt;TResult&gt; (this System.Linq.IQueryable source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TResult&gt; Cast&lt;TResult&gt;(class System.Linq.IQueryable source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TResult&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TResult" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Cast``1(System.Linq.IQueryable)" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Cast``1(System.Linq.IQueryable)" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Cast``1(System.Linq.IQueryable)" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it converts the values in <paramref name="source" /> to type <paramref name="TResult" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Converts the elements of an <see cref="T:System.Linq.IQueryable" /> to the specified type.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains each element of the source sequence converted to the specified type.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Linq.IQueryable" /> that contains the elements to be converted.</param>
        <typeparam name="TResult">
          <attribution license="cc4" from="Microsoft" modified="false" />The type to convert the elements of <paramref name="source" /> to.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Concat&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TSource&gt; Concat&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source1, System.Collections.Generic.IEnumerable&lt;TSource&gt; source2);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TSource&gt; Concat&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source1, class System.Collections.Generic.IEnumerable`1&lt;!!TSource&gt; source2) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source1" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="source2" Type="System.Collections.Generic.IEnumerable&lt;TSource&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Concat``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Concat``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source1" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Concat``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0})" /> depends on the implementation of the type of the <paramref name="source1" /> parameter. The expected behavior is that the elements in <paramref name="source2" /> are concatenated to those of <paramref name="source1" /> to create a new sequence.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Concatenates two sequences.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains the concatenated elements of the two input sequences.</para>
        </returns>
        <param name="source1">
          <attribution license="cc4" from="Microsoft" modified="false" />The first sequence to concatenate.</param>
        <param name="source2">
          <attribution license="cc4" from="Microsoft" modified="false" />The sequence to concatenate to the first sequence.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the input sequences.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Contains&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static bool Contains&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, TSource item);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig bool Contains&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, !!TSource item) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="item" Type="TSource" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Contains``1(System.Linq.IQueryable{``0},``0)" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Contains``1(System.Linq.IQueryable{``0},``0)" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Contains``1(System.Linq.IQueryable{``0},``0)" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it determines if <paramref name="source" /> contains <paramref name="item" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Determines whether a sequence contains a specified element by using the default equality comparer.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>true if the input sequence contains an element that has the specified value; otherwise, false.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> in which to locate <paramref name="item" />.</param>
        <param name="item">
          <attribution license="cc4" from="Microsoft" modified="false" />The object to locate in the sequence.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Contains&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static bool Contains&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, TSource item, System.Collections.Generic.IEqualityComparer&lt;TSource&gt; comparer);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig bool Contains&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, !!TSource item, class System.Collections.Generic.IEqualityComparer`1&lt;!!TSource&gt; comparer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="item" Type="TSource" />
        <Parameter Name="comparer" Type="System.Collections.Generic.IEqualityComparer&lt;TSource&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Contains``1(System.Linq.IQueryable{``0},``0,System.Collections.Generic.IEqualityComparer{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Contains``1(System.Linq.IQueryable{``0},``0,System.Collections.Generic.IEqualityComparer{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Contains``1(System.Linq.IQueryable{``0},``0,System.Collections.Generic.IEqualityComparer{``0})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it determines if <paramref name="source" /> contains <paramref name="item" /> by using <paramref name="comparer" /> to compare values.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Determines whether a sequence contains a specified element by using a specified <see cref="T:System.Collections.Generic.IEqualityComparer`1" />.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>true if the input sequence contains an element that has the specified value; otherwise, false.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> in which to locate <paramref name="item" />.</param>
        <param name="item">
          <attribution license="cc4" from="Microsoft" modified="false" />The object to locate in the sequence.</param>
        <param name="comparer">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.Generic.IEqualityComparer`1" /> to compare values.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Count&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static int Count&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig int32 Count&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Count``1(System.Linq.IQueryable{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Count``1(System.Linq.IQueryable{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Count``1(System.Linq.IQueryable{``0})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it counts the number of items in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the number of elements in a sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The number of elements in the input sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Linq.IQueryable`1" /> that contains the elements to be counted.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Count&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static int Count&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,bool&gt;&gt; predicate);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig int32 Count&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, bool&gt;&gt; predicate) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="predicate" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Boolean&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Count``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Count``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Count``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it counts the number of items in <paramref name="source" /> that satisfy the condition specified by <paramref name="predicate" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the number of elements in the specified sequence that satisfies a condition.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The number of elements in the sequence that satisfies the condition in the predicate function.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> that contains the elements to be counted.</param>
        <param name="predicate">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to test each element for a condition.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="DefaultIfEmpty&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TSource&gt; DefaultIfEmpty&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TSource&gt; DefaultIfEmpty&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.DefaultIfEmpty``1(System.Linq.IQueryable{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.DefaultIfEmpty``1(System.Linq.IQueryable{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.DefaultIfEmpty``1(System.Linq.IQueryable{``0})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns <paramref name="source" /> if it is not empty. Otherwise, it returns an <see cref="T:System.Linq.IQueryable`1" /> that contains <unmanagedCodeEntityReference>default</unmanagedCodeEntityReference>(<paramref name="TSource" />).</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the elements of the specified sequence or the type parameter's default value in a singleton collection if the sequence is empty.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains default(<paramref name="TSource" />) if <paramref name="source" /> is empty; otherwise, <paramref name="source" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Linq.IQueryable`1" /> to return a default value for if empty.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="DefaultIfEmpty&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TSource&gt; DefaultIfEmpty&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, TSource defaultValue);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TSource&gt; DefaultIfEmpty&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, !!TSource defaultValue) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="defaultValue" Type="TSource" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.DefaultIfEmpty``1(System.Linq.IQueryable{``0},``0)" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.DefaultIfEmpty``1(System.Linq.IQueryable{``0},``0)" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.DefaultIfEmpty``1(System.Linq.IQueryable{``0},``0)" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns <paramref name="source" /> if it is not empty. Otherwise, it returns an <see cref="T:System.Linq.IQueryable`1" /> that contains <paramref name="defaultValue" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the elements of the specified sequence or the specified value in a singleton collection if the sequence is empty.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains <paramref name="defaultValue" /> if <paramref name="source" /> is empty; otherwise, <paramref name="source" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Linq.IQueryable`1" /> to return the specified value for if empty.</param>
        <param name="defaultValue">
          <attribution license="cc4" from="Microsoft" modified="false" />The value to return if the sequence is empty.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Distinct&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TSource&gt; Distinct&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TSource&gt; Distinct&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Distinct``1(System.Linq.IQueryable{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Distinct``1(System.Linq.IQueryable{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Distinct``1(System.Linq.IQueryable{``0})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns an unordered sequence of the unique items in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns distinct elements from a sequence by using the default equality comparer to compare values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains distinct elements from <paramref name="source" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Linq.IQueryable`1" /> to remove duplicates from.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Distinct&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TSource&gt; Distinct&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Collections.Generic.IEqualityComparer&lt;TSource&gt; comparer);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TSource&gt; Distinct&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Collections.Generic.IEqualityComparer`1&lt;!!TSource&gt; comparer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="comparer" Type="System.Collections.Generic.IEqualityComparer&lt;TSource&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Distinct``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEqualityComparer{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Distinct``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEqualityComparer{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Distinct``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEqualityComparer{``0})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns an unordered sequence of the unique items in <paramref name="source" /> by using <paramref name="comparer" /> to compare values.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns distinct elements from a sequence by using a specified <see cref="T:System.Collections.Generic.IEqualityComparer`1" /> to compare values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains distinct elements from <paramref name="source" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Linq.IQueryable`1" /> to remove duplicates from.</param>
        <param name="comparer">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.Generic.IEqualityComparer`1" /> to compare values.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="ElementAt&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static TSource ElementAt&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, int index);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TSource ElementAt&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, int32 index) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TSource</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="index" Type="System.Int32" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.ElementAt``1(System.Linq.IQueryable{``0},System.Int32)" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.ElementAt``1(System.Linq.IQueryable{``0},System.Int32)" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.ElementAt``1(System.Linq.IQueryable{``0},System.Int32)" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the item at position <paramref name="index" /> in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the element at a specified index in a sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The element at the specified position in <paramref name="source" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> to return an element from.</param>
        <param name="index">
          <attribution license="cc4" from="Microsoft" modified="false" />The zero-based index of the element to retrieve.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="ElementAtOrDefault&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static TSource ElementAtOrDefault&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, int index);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TSource ElementAtOrDefault&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, int32 index) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TSource</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="index" Type="System.Int32" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.ElementAtOrDefault``1(System.Linq.IQueryable{``0},System.Int32)" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.ElementAtOrDefault``1(System.Linq.IQueryable{``0},System.Int32)" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.ElementAtOrDefault``1(System.Linq.IQueryable{``0},System.Int32)" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the item at position <paramref name="index" /> in <paramref name="source" />, or <unmanagedCodeEntityReference>default</unmanagedCodeEntityReference>(<paramref name="TSource" />) if <paramref name="index" /> is outside the bounds of <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the element at a specified index in a sequence or a default value if the index is out of range.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>
            <unmanagedCodeEntityReference>default</unmanagedCodeEntityReference>(<paramref name="TSource" />) if <paramref name="index" /> is outside the bounds of <paramref name="source" />; otherwise, the element at the specified position in <paramref name="source" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> to return an element from.</param>
        <param name="index">
          <attribution license="cc4" from="Microsoft" modified="false" />The zero-based index of the element to retrieve.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Except&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TSource&gt; Except&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source1, System.Collections.Generic.IEnumerable&lt;TSource&gt; source2);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TSource&gt; Except&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source1, class System.Collections.Generic.IEnumerable`1&lt;!!TSource&gt; source2) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source1" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="source2" Type="System.Collections.Generic.IEnumerable&lt;TSource&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Except``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Except``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the<paramref name="source1" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Except``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0})" /> depends on the implementation of the type of  the <paramref name="source1" /> parameter. The expected behavior is that all the elements in <paramref name="source1" /> are returned except for those that are also in <paramref name="source2" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Produces the set difference of two sequences by using the default equality comparer to compare values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains the set difference of the two sequences.</para>
        </returns>
        <param name="source1">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> whose elements that are not also in <paramref name="source2" /> will be returned.</param>
        <param name="source2">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.Generic.IEnumerable`1" /> whose elements that also occur in the first sequence will not appear in the returned sequence.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the input sequences.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Except&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TSource&gt; Except&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source1, System.Collections.Generic.IEnumerable&lt;TSource&gt; source2, System.Collections.Generic.IEqualityComparer&lt;TSource&gt; comparer);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TSource&gt; Except&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source1, class System.Collections.Generic.IEnumerable`1&lt;!!TSource&gt; source2, class System.Collections.Generic.IEqualityComparer`1&lt;!!TSource&gt; comparer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source1" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="source2" Type="System.Collections.Generic.IEnumerable&lt;TSource&gt;" />
        <Parameter Name="comparer" Type="System.Collections.Generic.IEqualityComparer&lt;TSource&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Except``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Except``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the<paramref name="source1" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Except``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})" /> depends on the implementation of the type of the <paramref name="source1" /> parameter. The expected behavior is that all the elements in <paramref name="source1" /> are returned except for those that are also in <paramref name="source2" />, and <paramref name="comparer" /> is used to compare values.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Produces the set difference of two sequences by using the specified <see cref="T:System.Collections.Generic.IEqualityComparer`1" /> to compare values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains the set difference of the two sequences.</para>
        </returns>
        <param name="source1">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> whose elements that are not also in <paramref name="source2" /> will be returned.</param>
        <param name="source2">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.Generic.IEnumerable`1" /> whose elements that also occur in the first sequence will not appear in the returned sequence.</param>
        <param name="comparer">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.Generic.IEqualityComparer`1" /> to compare values.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the input sequences.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="First&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static TSource First&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TSource First&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TSource</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.First``1(System.Linq.IQueryable{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.First``1(System.Linq.IQueryable{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.First``1(System.Linq.IQueryable{``0})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the first element in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the first element of a sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The first element in <paramref name="source" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Linq.IQueryable`1" /> to return the first element of.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="First&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static TSource First&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,bool&gt;&gt; predicate);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TSource First&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, bool&gt;&gt; predicate) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TSource</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="predicate" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Boolean&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.First``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.First``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.First``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the first element in <paramref name="source" /> that satisfies the condition specified by <paramref name="predicate" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the first element of a sequence that satisfies a specified condition.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The first element in <paramref name="source" /> that passes the test in <paramref name="predicate" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> to return an element from.</param>
        <param name="predicate">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to test each element for a condition.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="FirstOrDefault&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static TSource FirstOrDefault&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TSource FirstOrDefault&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TSource</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.FirstOrDefault``1(System.Linq.IQueryable{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.FirstOrDefault``1(System.Linq.IQueryable{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.FirstOrDefault``1(System.Linq.IQueryable{``0})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the first element in <paramref name="source" />, or a default value if <paramref name="source" /> is empty.</para>
          <para>The <see cref="Overload:System.Linq.Queryable.FirstOrDefault" /> method does not provide a way to specify the default value to return if <paramref name="source" /> is empty. If you want to specify a default value other than default(<paramref name="TSource" />), use the <see cref="M:System.Linq.Queryable.DefaultIfEmpty``1(System.Linq.IQueryable{``0},``0)" /> method as described in the Example section.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the first element of a sequence, or a default value if the sequence contains no elements.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>
            <unmanagedCodeEntityReference>default</unmanagedCodeEntityReference>(<paramref name="TSource" />) if <paramref name="source" /> is empty; otherwise, the first element in <paramref name="source" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Linq.IQueryable`1" /> to return the first element of.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="FirstOrDefault&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static TSource FirstOrDefault&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,bool&gt;&gt; predicate);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TSource FirstOrDefault&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, bool&gt;&gt; predicate) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TSource</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="predicate" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Boolean&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.FirstOrDefault``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.FirstOrDefault``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.FirstOrDefault``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the first element in <paramref name="source" /> that satisfies the condition in <paramref name="predicate" />, or a default value if no element satisfies the condition.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the first element of a sequence that satisfies a specified condition or a default value if no such element is found.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>
            <unmanagedCodeEntityReference>default</unmanagedCodeEntityReference>(<paramref name="TSource" />) if <paramref name="source" /> is empty or if no element passes the test specified by <paramref name="predicate" />; otherwise, the first element in <paramref name="source" /> that passes the test specified by <paramref name="predicate" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> to return an element from.</param>
        <param name="predicate">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to test each element for a condition.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="GroupBy&lt;TSource,TKey&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;System.Linq.IGrouping&lt;TKey,TSource&gt;&gt; GroupBy&lt;TSource,TKey&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TKey&gt;&gt; keySelector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;class System.Linq.IGrouping`2&lt;!!TKey, !!TSource&gt;&gt; GroupBy&lt;TSource, TKey&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TKey&gt;&gt; keySelector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;System.Linq.IGrouping&lt;TKey,TSource&gt;&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TKey" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="keySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TKey&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.GroupBy``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.GroupBy``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.GroupBy``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it groups the elements of <paramref name="source" /> by a key value that is obtained by invoking <paramref name="keySelector" /> on each element.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Groups the elements of a sequence according to a specified key selector function.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <unmanagedCodeEntityReference>IQueryable&lt;IGrouping&lt;TKey, TSource&gt;&gt;</unmanagedCodeEntityReference> in C# or <unmanagedCodeEntityReference>IQueryable(Of IGrouping(Of TKey, TSource))</unmanagedCodeEntityReference> in vbprvb where each <see cref="T:System.Linq.IGrouping`2" /> object contains a sequence of objects and a key.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> whose elements to group.</param>
        <param name="keySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract the key for each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TKey">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the key returned by the function represented in <paramref name="keySelector" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="GroupBy&lt;TSource,TKey&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;System.Linq.IGrouping&lt;TKey,TSource&gt;&gt; GroupBy&lt;TSource,TKey&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TKey&gt;&gt; keySelector, System.Collections.Generic.IEqualityComparer&lt;TKey&gt; comparer);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;class System.Linq.IGrouping`2&lt;!!TKey, !!TSource&gt;&gt; GroupBy&lt;TSource, TKey&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TKey&gt;&gt; keySelector, class System.Collections.Generic.IEqualityComparer`1&lt;!!TKey&gt; comparer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;System.Linq.IGrouping&lt;TKey,TSource&gt;&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TKey" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="keySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TKey&gt;&gt;" />
        <Parameter Name="comparer" Type="System.Collections.Generic.IEqualityComparer&lt;TKey&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.GroupBy``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Collections.Generic.IEqualityComparer{``1})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.GroupBy``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Collections.Generic.IEqualityComparer{``1})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.GroupBy``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Collections.Generic.IEqualityComparer{``1})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it groups the elements of <paramref name="source" /> by a key value. The key value is obtained by invoking <paramref name="keySelector" /> on each element, and key values are compared by using <paramref name="comparer" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Groups the elements of a sequence according to a specified key selector function and compares the keys by using a specified comparer.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <unmanagedCodeEntityReference>IQueryable&lt;IGrouping&lt;TKey, TSource&gt;&gt;</unmanagedCodeEntityReference> in C# or <unmanagedCodeEntityReference>IQueryable(Of IGrouping(Of TKey, TSource))</unmanagedCodeEntityReference> in vbprvb where each <see cref="T:System.Linq.IGrouping`2" /> contains a sequence of objects and a key.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> whose elements to group.</param>
        <param name="keySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract the key for each element.</param>
        <param name="comparer">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.Generic.IEqualityComparer`1" /> to compare keys.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TKey">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the key returned by the function represented in <paramref name="keySelector" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="GroupBy&lt;TSource,TKey,TElement&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;System.Linq.IGrouping&lt;TKey,TElement&gt;&gt; GroupBy&lt;TSource,TKey,TElement&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TKey&gt;&gt; keySelector, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TElement&gt;&gt; elementSelector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;class System.Linq.IGrouping`2&lt;!!TKey, !!TElement&gt;&gt; GroupBy&lt;TSource, TKey, TElement&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TKey&gt;&gt; keySelector, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TElement&gt;&gt; elementSelector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;System.Linq.IGrouping&lt;TKey,TElement&gt;&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TKey" />
        <TypeParameter Name="TElement" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="keySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TKey&gt;&gt;" />
        <Parameter Name="elementSelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TElement&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.GroupBy``3(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{``0,``2}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.GroupBy``3(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{``0,``2}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.GroupBy``3(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{``0,``2}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it groups the elements of <paramref name="source" /> by a key value that is obtained by invoking <paramref name="keySelector" /> on each element. It invokes <paramref name="elementSelector" /> on each element to obtain a result element.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Groups the elements of a sequence according to a specified key selector function and projects the elements for each group by using a specified function.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <unmanagedCodeEntityReference>IQueryable&lt;IGrouping&lt;TKey, TElement&gt;&gt;</unmanagedCodeEntityReference> in C# or <unmanagedCodeEntityReference>IQueryable(Of IGrouping(Of TKey, TElement))</unmanagedCodeEntityReference> in vbprvb where each <see cref="T:System.Linq.IGrouping`2" /> contains a sequence of objects of type <paramref name="TElement" /> and a key.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> whose elements to group.</param>
        <param name="keySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract the key for each element.</param>
        <param name="elementSelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to map each source element to an element in an <see cref="T:System.Linq.IGrouping`2" />.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TKey">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the key returned by the function represented in <paramref name="keySelector" />.</typeparam>
        <typeparam name="TElement">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements in each <see cref="T:System.Linq.IGrouping`2" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="GroupBy&lt;TSource,TKey,TElement&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;System.Linq.IGrouping&lt;TKey,TElement&gt;&gt; GroupBy&lt;TSource,TKey,TElement&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TKey&gt;&gt; keySelector, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TElement&gt;&gt; elementSelector, System.Collections.Generic.IEqualityComparer&lt;TKey&gt; comparer);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;class System.Linq.IGrouping`2&lt;!!TKey, !!TElement&gt;&gt; GroupBy&lt;TSource, TKey, TElement&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TKey&gt;&gt; keySelector, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TElement&gt;&gt; elementSelector, class System.Collections.Generic.IEqualityComparer`1&lt;!!TKey&gt; comparer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;System.Linq.IGrouping&lt;TKey,TElement&gt;&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TKey" />
        <TypeParameter Name="TElement" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="keySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TKey&gt;&gt;" />
        <Parameter Name="elementSelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TElement&gt;&gt;" />
        <Parameter Name="comparer" Type="System.Collections.Generic.IEqualityComparer&lt;TKey&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.GroupBy``3(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Collections.Generic.IEqualityComparer{``1})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.GroupBy``3(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Collections.Generic.IEqualityComparer{``1})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.GroupBy``3(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Collections.Generic.IEqualityComparer{``1})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it groups the elements of <paramref name="source" /> by a key value that is obtained by invoking <paramref name="keySelector" /> on each element. Key values are compared by using <paramref name="comparer" />. The <paramref name="elementSelector" /> parameter is invoked on each element to obtain a result element.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Groups the elements of a sequence and projects the elements for each group by using a specified function. Key values are compared by using a specified comparer.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <unmanagedCodeEntityReference>IQueryable&lt;IGrouping&lt;TKey, TElement&gt;&gt;</unmanagedCodeEntityReference> in C# or <unmanagedCodeEntityReference>IQueryable(Of IGrouping(Of TKey, TElement))</unmanagedCodeEntityReference> in vbprvb where each <see cref="T:System.Linq.IGrouping`2" /> contains a sequence of objects of type <paramref name="TElement" /> and a key.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> whose elements to group.</param>
        <param name="keySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract the key for each element.</param>
        <param name="elementSelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to map each source element to an element in an <see cref="T:System.Linq.IGrouping`2" />.</param>
        <param name="comparer">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.Generic.IEqualityComparer`1" /> to compare keys.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TKey">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the key returned by the function represented in <paramref name="keySelector" />.</typeparam>
        <typeparam name="TElement">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements in each <see cref="T:System.Linq.IGrouping`2" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="GroupBy&lt;TSource,TKey,TResult&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TResult&gt; GroupBy&lt;TSource,TKey,TResult&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TKey&gt;&gt; keySelector, System.Linq.Expressions.Expression&lt;Func&lt;TKey,System.Collections.Generic.IEnumerable&lt;TSource&gt;,TResult&gt;&gt; resultSelector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TResult&gt; GroupBy&lt;TSource, TKey, TResult&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TKey&gt;&gt; keySelector, class System.Linq.Expressions.Expression`1&lt;class System.Func`3&lt;!!TKey, class System.Collections.Generic.IEnumerable`1&lt;!!TSource&gt;, !!TResult&gt;&gt; resultSelector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TResult&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TKey" />
        <TypeParameter Name="TResult" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="keySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TKey&gt;&gt;" />
        <Parameter Name="resultSelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TKey,System.Collections.Generic.IEnumerable&lt;TSource&gt;,TResult&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.GroupBy``3(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{``1,System.Collections.Generic.IEnumerable{``0},``2}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.GroupBy``3(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{``1,System.Collections.Generic.IEnumerable{``0},``2}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.GroupBy``3(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{``1,System.Collections.Generic.IEnumerable{``0},``2}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it groups the elements of <paramref name="source" /> by a key value that is obtained by invoking <paramref name="keySelector" /> on each element. The <paramref name="resultSelector" /> parameter is used to obtain a result value from each group and its key.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Groups the elements of a sequence according to a specified key selector function and creates a result value from each group and its key.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <unmanagedCodeEntityReference>T:System.Linq.IQueryable`1</unmanagedCodeEntityReference> that has a type argument of <paramref name="TResult" /> and where each element represents a projection over a group and its key.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> whose elements to group.</param>
        <param name="keySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract the key for each element.</param>
        <param name="resultSelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to create a result value from each group.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TKey">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the key returned by the function represented in <paramref name="keySelector" />.</typeparam>
        <typeparam name="TResult">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the result value returned by <paramref name="resultSelector" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="GroupBy&lt;TSource,TKey,TResult&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TResult&gt; GroupBy&lt;TSource,TKey,TResult&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TKey&gt;&gt; keySelector, System.Linq.Expressions.Expression&lt;Func&lt;TKey,System.Collections.Generic.IEnumerable&lt;TSource&gt;,TResult&gt;&gt; resultSelector, System.Collections.Generic.IEqualityComparer&lt;TKey&gt; comparer);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TResult&gt; GroupBy&lt;TSource, TKey, TResult&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TKey&gt;&gt; keySelector, class System.Linq.Expressions.Expression`1&lt;class System.Func`3&lt;!!TKey, class System.Collections.Generic.IEnumerable`1&lt;!!TSource&gt;, !!TResult&gt;&gt; resultSelector, class System.Collections.Generic.IEqualityComparer`1&lt;!!TKey&gt; comparer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TResult&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TKey" />
        <TypeParameter Name="TResult" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="keySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TKey&gt;&gt;" />
        <Parameter Name="resultSelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TKey,System.Collections.Generic.IEnumerable&lt;TSource&gt;,TResult&gt;&gt;" />
        <Parameter Name="comparer" Type="System.Collections.Generic.IEqualityComparer&lt;TKey&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.GroupBy``3(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{``1,System.Collections.Generic.IEnumerable{``0},``2}},System.Collections.Generic.IEqualityComparer{``1})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.GroupBy``3(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{``1,System.Collections.Generic.IEnumerable{``0},``2}},System.Collections.Generic.IEqualityComparer{``1})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.GroupBy``3(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{``1,System.Collections.Generic.IEnumerable{``0},``2}},System.Collections.Generic.IEqualityComparer{``1})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it groups the elements of <paramref name="source" /> by key values that are obtained by invoking <paramref name="keySelector" /> on each element. The <paramref name="comparer" /> parameter is used to compare keys and the <paramref name="resultSelector" /> parameter is used to obtain a result value from each group and its key.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Groups the elements of a sequence according to a specified key selector function and creates a result value from each group and its key. Keys are compared by using a specified comparer.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <unmanagedCodeEntityReference>T:System.Linq.IQueryable`1</unmanagedCodeEntityReference> that has a type argument of <paramref name="TResult" /> and where each element represents a projection over a group and its key.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> whose elements to group.</param>
        <param name="keySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract the key for each element.</param>
        <param name="resultSelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to create a result value from each group.</param>
        <param name="comparer">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.Generic.IEqualityComparer`1" /> to compare keys.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TKey">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the key returned by the function represented in <paramref name="keySelector" />.</typeparam>
        <typeparam name="TResult">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the result value returned by <paramref name="resultSelector" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="GroupBy&lt;TSource,TKey,TElement,TResult&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TResult&gt; GroupBy&lt;TSource,TKey,TElement,TResult&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TKey&gt;&gt; keySelector, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TElement&gt;&gt; elementSelector, System.Linq.Expressions.Expression&lt;Func&lt;TKey,System.Collections.Generic.IEnumerable&lt;TElement&gt;,TResult&gt;&gt; resultSelector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TResult&gt; GroupBy&lt;TSource, TKey, TElement, TResult&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TKey&gt;&gt; keySelector, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TElement&gt;&gt; elementSelector, class System.Linq.Expressions.Expression`1&lt;class System.Func`3&lt;!!TKey, class System.Collections.Generic.IEnumerable`1&lt;!!TElement&gt;, !!TResult&gt;&gt; resultSelector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TResult&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TKey" />
        <TypeParameter Name="TElement" />
        <TypeParameter Name="TResult" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="keySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TKey&gt;&gt;" />
        <Parameter Name="elementSelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TElement&gt;&gt;" />
        <Parameter Name="resultSelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TKey,System.Collections.Generic.IEnumerable&lt;TElement&gt;,TResult&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.GroupBy``4(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,System.Collections.Generic.IEnumerable{``2},``3}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.GroupBy``4(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,System.Collections.Generic.IEnumerable{``2},``3}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.GroupBy``4(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,System.Collections.Generic.IEnumerable{``2},``3}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it groups the elements of <paramref name="source" /> by key values that are obtained by invoking <paramref name="keySelector" /> on each element. The <paramref name="elementSelector" /> parameter is used to project the elements of each group, and the <paramref name="resultSelector" /> parameter is used to obtain a result value from each group and its key.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Groups the elements of a sequence according to a specified key selector function and creates a result value from each group and its key. The elements of each group are projected by using a specified function.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <unmanagedCodeEntityReference>T:System.Linq.IQueryable`1</unmanagedCodeEntityReference> that has a type argument of <paramref name="TResult" /> and where each element represents a projection over a group and its key.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> whose elements to group.</param>
        <param name="keySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract the key for each element.</param>
        <param name="elementSelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to map each source element to an element in an <see cref="T:System.Linq.IGrouping`2" />.</param>
        <param name="resultSelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to create a result value from each group.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TKey">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the key returned by the function represented in <paramref name="keySelector" />.</typeparam>
        <typeparam name="TElement">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements in each <see cref="T:System.Linq.IGrouping`2" />.</typeparam>
        <typeparam name="TResult">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the result value returned by <paramref name="resultSelector" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="GroupBy&lt;TSource,TKey,TElement,TResult&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TResult&gt; GroupBy&lt;TSource,TKey,TElement,TResult&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TKey&gt;&gt; keySelector, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TElement&gt;&gt; elementSelector, System.Linq.Expressions.Expression&lt;Func&lt;TKey,System.Collections.Generic.IEnumerable&lt;TElement&gt;,TResult&gt;&gt; resultSelector, System.Collections.Generic.IEqualityComparer&lt;TKey&gt; comparer);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TResult&gt; GroupBy&lt;TSource, TKey, TElement, TResult&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TKey&gt;&gt; keySelector, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TElement&gt;&gt; elementSelector, class System.Linq.Expressions.Expression`1&lt;class System.Func`3&lt;!!TKey, class System.Collections.Generic.IEnumerable`1&lt;!!TElement&gt;, !!TResult&gt;&gt; resultSelector, class System.Collections.Generic.IEqualityComparer`1&lt;!!TKey&gt; comparer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TResult&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TKey" />
        <TypeParameter Name="TElement" />
        <TypeParameter Name="TResult" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="keySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TKey&gt;&gt;" />
        <Parameter Name="elementSelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TElement&gt;&gt;" />
        <Parameter Name="resultSelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TKey,System.Collections.Generic.IEnumerable&lt;TElement&gt;,TResult&gt;&gt;" />
        <Parameter Name="comparer" Type="System.Collections.Generic.IEqualityComparer&lt;TKey&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.GroupBy``4(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,System.Collections.Generic.IEnumerable{``2},``3}},System.Collections.Generic.IEqualityComparer{``1})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.GroupBy``4(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,System.Collections.Generic.IEnumerable{``2},``3}},System.Collections.Generic.IEqualityComparer{``1})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.GroupBy``4(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,System.Collections.Generic.IEnumerable{``2},``3}},System.Collections.Generic.IEqualityComparer{``1})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it groups the elements of <paramref name="source" /> by key values that are obtained by invoking <paramref name="keySelector" /> on each element. The <paramref name="comparer" /> parameter is used to compare key values. The <paramref name="elementSelector" /> parameter is used to project the elements of each group, and the <paramref name="resultSelector" /> parameter is used to obtain a result value from each group and its key.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Groups the elements of a sequence according to a specified key selector function and creates a result value from each group and its key. Keys are compared by using a specified comparer and the elements of each group are projected by using a specified function.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <unmanagedCodeEntityReference>T:System.Linq.IQueryable`1</unmanagedCodeEntityReference> that has a type argument of <paramref name="TResult" /> and where each element represents a projection over a group and its key.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> whose elements to group.</param>
        <param name="keySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract the key for each element.</param>
        <param name="elementSelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to map each source element to an element in an <see cref="T:System.Linq.IGrouping`2" />.</param>
        <param name="resultSelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to create a result value from each group.</param>
        <param name="comparer">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.Generic.IEqualityComparer`1" /> to compare keys.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TKey">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the key returned by the function represented in <paramref name="keySelector" />.</typeparam>
        <typeparam name="TElement">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements in each <see cref="T:System.Linq.IGrouping`2" />.</typeparam>
        <typeparam name="TResult">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the result value returned by <paramref name="resultSelector" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="GroupJoin&lt;TOuter,TInner,TKey,TResult&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TResult&gt; GroupJoin&lt;TOuter,TInner,TKey,TResult&gt; (this System.Linq.IQueryable&lt;TOuter&gt; outer, System.Collections.Generic.IEnumerable&lt;TInner&gt; inner, System.Linq.Expressions.Expression&lt;Func&lt;TOuter,TKey&gt;&gt; outerKeySelector, System.Linq.Expressions.Expression&lt;Func&lt;TInner,TKey&gt;&gt; innerKeySelector, System.Linq.Expressions.Expression&lt;Func&lt;TOuter,System.Collections.Generic.IEnumerable&lt;TInner&gt;,TResult&gt;&gt; resultSelector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TResult&gt; GroupJoin&lt;TOuter, TInner, TKey, TResult&gt;(class System.Linq.IQueryable`1&lt;!!TOuter&gt; outer, class System.Collections.Generic.IEnumerable`1&lt;!!TInner&gt; inner, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TOuter, !!TKey&gt;&gt; outerKeySelector, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TInner, !!TKey&gt;&gt; innerKeySelector, class System.Linq.Expressions.Expression`1&lt;class System.Func`3&lt;!!TOuter, class System.Collections.Generic.IEnumerable`1&lt;!!TInner&gt;, !!TResult&gt;&gt; resultSelector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TResult&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TOuter" />
        <TypeParameter Name="TInner" />
        <TypeParameter Name="TKey" />
        <TypeParameter Name="TResult" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="outer" Type="System.Linq.IQueryable&lt;TOuter&gt;" RefType="this" />
        <Parameter Name="inner" Type="System.Collections.Generic.IEnumerable&lt;TInner&gt;" />
        <Parameter Name="outerKeySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TOuter,TKey&gt;&gt;" />
        <Parameter Name="innerKeySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TInner,TKey&gt;&gt;" />
        <Parameter Name="resultSelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TOuter,System.Collections.Generic.IEnumerable&lt;TInner&gt;,TResult&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.GroupJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,System.Collections.Generic.IEnumerable{``1},``3}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.GroupJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,System.Collections.Generic.IEnumerable{``1},``3}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="outer" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.GroupJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,System.Collections.Generic.IEnumerable{``1},``3}})" /> depends on the implementation of the type of the <paramref name="outer" /> parameter. The expected behavior is that the <paramref name="outerKeySelector" /> and <paramref name="innerKeySelector" /> functions are used to extract keys from <paramref name="outer" /> and <paramref name="inner" />, respectively. These keys are compared for equality to match each element in <paramref name="outer" /> with zero or more elements from <paramref name="inner" />. Then the <paramref name="resultSelector" /> function is invoked to project a result object from each group of correlated elements.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Correlates the elements of two sequences based on key equality and groups the results. The default equality comparer is used to compare keys.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains elements of type <paramref name="TResult" /> obtained by performing a grouped join on two sequences.</para>
        </returns>
        <param name="outer">
          <attribution license="cc4" from="Microsoft" modified="false" />The first sequence to join.</param>
        <param name="inner">
          <attribution license="cc4" from="Microsoft" modified="false" />The sequence to join to the first sequence.</param>
        <param name="outerKeySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract the join key from each element of the first sequence.</param>
        <param name="innerKeySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract the join key from each element of the second sequence.</param>
        <param name="resultSelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to create a result element from an element from the first sequence and a collection of matching elements from the second sequence.</param>
        <typeparam name="TOuter">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the first sequence.</typeparam>
        <typeparam name="TInner">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the second sequence.</typeparam>
        <typeparam name="TKey">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the keys returned by the key selector functions.</typeparam>
        <typeparam name="TResult">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the result elements.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="GroupJoin&lt;TOuter,TInner,TKey,TResult&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TResult&gt; GroupJoin&lt;TOuter,TInner,TKey,TResult&gt; (this System.Linq.IQueryable&lt;TOuter&gt; outer, System.Collections.Generic.IEnumerable&lt;TInner&gt; inner, System.Linq.Expressions.Expression&lt;Func&lt;TOuter,TKey&gt;&gt; outerKeySelector, System.Linq.Expressions.Expression&lt;Func&lt;TInner,TKey&gt;&gt; innerKeySelector, System.Linq.Expressions.Expression&lt;Func&lt;TOuter,System.Collections.Generic.IEnumerable&lt;TInner&gt;,TResult&gt;&gt; resultSelector, System.Collections.Generic.IEqualityComparer&lt;TKey&gt; comparer);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TResult&gt; GroupJoin&lt;TOuter, TInner, TKey, TResult&gt;(class System.Linq.IQueryable`1&lt;!!TOuter&gt; outer, class System.Collections.Generic.IEnumerable`1&lt;!!TInner&gt; inner, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TOuter, !!TKey&gt;&gt; outerKeySelector, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TInner, !!TKey&gt;&gt; innerKeySelector, class System.Linq.Expressions.Expression`1&lt;class System.Func`3&lt;!!TOuter, class System.Collections.Generic.IEnumerable`1&lt;!!TInner&gt;, !!TResult&gt;&gt; resultSelector, class System.Collections.Generic.IEqualityComparer`1&lt;!!TKey&gt; comparer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TResult&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TOuter" />
        <TypeParameter Name="TInner" />
        <TypeParameter Name="TKey" />
        <TypeParameter Name="TResult" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="outer" Type="System.Linq.IQueryable&lt;TOuter&gt;" RefType="this" />
        <Parameter Name="inner" Type="System.Collections.Generic.IEnumerable&lt;TInner&gt;" />
        <Parameter Name="outerKeySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TOuter,TKey&gt;&gt;" />
        <Parameter Name="innerKeySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TInner,TKey&gt;&gt;" />
        <Parameter Name="resultSelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TOuter,System.Collections.Generic.IEnumerable&lt;TInner&gt;,TResult&gt;&gt;" />
        <Parameter Name="comparer" Type="System.Collections.Generic.IEqualityComparer&lt;TKey&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.GroupJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,System.Collections.Generic.IEnumerable{``1},``3}},System.Collections.Generic.IEqualityComparer{``2})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.GroupJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,System.Collections.Generic.IEnumerable{``1},``3}},System.Collections.Generic.IEqualityComparer{``2})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="outer" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.GroupJoin``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,System.Collections.Generic.IEnumerable{``1},``3}},System.Collections.Generic.IEqualityComparer{``2})" /> depends on the implementation of the type of the <paramref name="outer" /> parameter. The expected behavior is that the <paramref name="outerKeySelector" /> and <paramref name="innerKeySelector" /> functions are used to extract keys from <paramref name="outer" /> and <paramref name="inner" />, respectively. These keys are compared for equality by using <paramref name="comparer" />. The outcome of the comparisons is used to match each element in <paramref name="outer" /> with zero or more elements from <paramref name="inner" />. Then the <paramref name="resultSelector" /> function is invoked to project a result object from each group of correlated elements.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Correlates the elements of two sequences based on key equality and groups the results. A specified <see cref="T:System.Collections.Generic.IEqualityComparer`1" /> is used to compare keys.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains elements of type <paramref name="TResult" /> obtained by performing a grouped join on two sequences.</para>
        </returns>
        <param name="outer">
          <attribution license="cc4" from="Microsoft" modified="false" />The first sequence to join.</param>
        <param name="inner">
          <attribution license="cc4" from="Microsoft" modified="false" />The sequence to join to the first sequence.</param>
        <param name="outerKeySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract the join key from each element of the first sequence.</param>
        <param name="innerKeySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract the join key from each element of the second sequence.</param>
        <param name="resultSelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to create a result element from an element from the first sequence and a collection of matching elements from the second sequence.</param>
        <param name="comparer">
          <attribution license="cc4" from="Microsoft" modified="false" />A comparer to hash and compare keys.</param>
        <typeparam name="TOuter">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the first sequence.</typeparam>
        <typeparam name="TInner">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the second sequence.</typeparam>
        <typeparam name="TKey">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the keys returned by the key selector functions.</typeparam>
        <typeparam name="TResult">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the result elements.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Intersect&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TSource&gt; Intersect&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source1, System.Collections.Generic.IEnumerable&lt;TSource&gt; source2);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TSource&gt; Intersect&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source1, class System.Collections.Generic.IEnumerable`1&lt;!!TSource&gt; source2) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source1" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="source2" Type="System.Collections.Generic.IEnumerable&lt;TSource&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Intersect``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Intersect``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source1" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Intersect``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0})" /> depends on the implementation of the type of the <paramref name="source1" /> parameter. The expected behavior is that all the elements in <paramref name="source1" /> that are also in <paramref name="source2" /> are returned.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Produces the set intersection of two sequences by using the default equality comparer to compare values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A sequence that contains the set intersection of the two sequences.</para>
        </returns>
        <param name="source1">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence whose distinct elements that also appear in <paramref name="source2" /> are returned.</param>
        <param name="source2">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence whose distinct elements that also appear in the first sequence are returned.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the input sequences.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Intersect&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TSource&gt; Intersect&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source1, System.Collections.Generic.IEnumerable&lt;TSource&gt; source2, System.Collections.Generic.IEqualityComparer&lt;TSource&gt; comparer);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TSource&gt; Intersect&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source1, class System.Collections.Generic.IEnumerable`1&lt;!!TSource&gt; source2, class System.Collections.Generic.IEqualityComparer`1&lt;!!TSource&gt; comparer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source1" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="source2" Type="System.Collections.Generic.IEnumerable&lt;TSource&gt;" />
        <Parameter Name="comparer" Type="System.Collections.Generic.IEqualityComparer&lt;TSource&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Intersect``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Intersect``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source1" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Intersect``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})" /> depends on the implementation of the type of the <paramref name="source1" /> parameter. The expected behavior is that all the elements in <paramref name="source1" /> that are also in <paramref name="source2" /> are returned. The <paramref name="comparer" /> parameter is used to compare elements.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Produces the set intersection of two sequences by using the specified <see cref="T:System.Collections.Generic.IEqualityComparer`1" /> to compare values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains the set intersection of the two sequences.</para>
        </returns>
        <param name="source1">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> whose distinct elements that also appear in <paramref name="source2" /> are returned.</param>
        <param name="source2">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.Generic.IEnumerable`1" /> whose distinct elements that also appear in the first sequence are returned.</param>
        <param name="comparer">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.Generic.IEqualityComparer`1" /> to compare values.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the input sequences.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Join&lt;TOuter,TInner,TKey,TResult&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TResult&gt; Join&lt;TOuter,TInner,TKey,TResult&gt; (this System.Linq.IQueryable&lt;TOuter&gt; outer, System.Collections.Generic.IEnumerable&lt;TInner&gt; inner, System.Linq.Expressions.Expression&lt;Func&lt;TOuter,TKey&gt;&gt; outerKeySelector, System.Linq.Expressions.Expression&lt;Func&lt;TInner,TKey&gt;&gt; innerKeySelector, System.Linq.Expressions.Expression&lt;Func&lt;TOuter,TInner,TResult&gt;&gt; resultSelector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TResult&gt; Join&lt;TOuter, TInner, TKey, TResult&gt;(class System.Linq.IQueryable`1&lt;!!TOuter&gt; outer, class System.Collections.Generic.IEnumerable`1&lt;!!TInner&gt; inner, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TOuter, !!TKey&gt;&gt; outerKeySelector, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TInner, !!TKey&gt;&gt; innerKeySelector, class System.Linq.Expressions.Expression`1&lt;class System.Func`3&lt;!!TOuter, !!TInner, !!TResult&gt;&gt; resultSelector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TResult&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TOuter" />
        <TypeParameter Name="TInner" />
        <TypeParameter Name="TKey" />
        <TypeParameter Name="TResult" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="outer" Type="System.Linq.IQueryable&lt;TOuter&gt;" RefType="this" />
        <Parameter Name="inner" Type="System.Collections.Generic.IEnumerable&lt;TInner&gt;" />
        <Parameter Name="outerKeySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TOuter,TKey&gt;&gt;" />
        <Parameter Name="innerKeySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TInner,TKey&gt;&gt;" />
        <Parameter Name="resultSelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TOuter,TInner,TResult&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Join``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Join``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="outer" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Join``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}})" /> depends on the implementation of the type of the <paramref name="outer" /> parameter. The expected behavior is that of an inner join. The <paramref name="outerKeySelector" /> and <paramref name="innerKeySelector" /> functions are used to extract keys from <paramref name="outer" /> and <paramref name="inner" />, respectively. These keys are compared for equality to match elements from each sequence. A pair of elements is stored for each element in <paramref name="inner" /> that matches an element in <paramref name="outer" />. Then the <paramref name="resultSelector" /> function is invoked to project a result object from each pair of matching elements.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Correlates the elements of two sequences based on matching keys. The default equality comparer is used to compare keys.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that has elements of type <paramref name="TResult" /> obtained by performing an inner join on two sequences.</para>
        </returns>
        <param name="outer">
          <attribution license="cc4" from="Microsoft" modified="false" />The first sequence to join.</param>
        <param name="inner">
          <attribution license="cc4" from="Microsoft" modified="false" />The sequence to join to the first sequence.</param>
        <param name="outerKeySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract the join key from each element of the first sequence.</param>
        <param name="innerKeySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract the join key from each element of the second sequence.</param>
        <param name="resultSelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to create a result element from two matching elements.</param>
        <typeparam name="TOuter">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the first sequence.</typeparam>
        <typeparam name="TInner">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the second sequence.</typeparam>
        <typeparam name="TKey">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the keys returned by the key selector functions.</typeparam>
        <typeparam name="TResult">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the result elements.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Join&lt;TOuter,TInner,TKey,TResult&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TResult&gt; Join&lt;TOuter,TInner,TKey,TResult&gt; (this System.Linq.IQueryable&lt;TOuter&gt; outer, System.Collections.Generic.IEnumerable&lt;TInner&gt; inner, System.Linq.Expressions.Expression&lt;Func&lt;TOuter,TKey&gt;&gt; outerKeySelector, System.Linq.Expressions.Expression&lt;Func&lt;TInner,TKey&gt;&gt; innerKeySelector, System.Linq.Expressions.Expression&lt;Func&lt;TOuter,TInner,TResult&gt;&gt; resultSelector, System.Collections.Generic.IEqualityComparer&lt;TKey&gt; comparer);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TResult&gt; Join&lt;TOuter, TInner, TKey, TResult&gt;(class System.Linq.IQueryable`1&lt;!!TOuter&gt; outer, class System.Collections.Generic.IEnumerable`1&lt;!!TInner&gt; inner, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TOuter, !!TKey&gt;&gt; outerKeySelector, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TInner, !!TKey&gt;&gt; innerKeySelector, class System.Linq.Expressions.Expression`1&lt;class System.Func`3&lt;!!TOuter, !!TInner, !!TResult&gt;&gt; resultSelector, class System.Collections.Generic.IEqualityComparer`1&lt;!!TKey&gt; comparer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TResult&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TOuter" />
        <TypeParameter Name="TInner" />
        <TypeParameter Name="TKey" />
        <TypeParameter Name="TResult" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="outer" Type="System.Linq.IQueryable&lt;TOuter&gt;" RefType="this" />
        <Parameter Name="inner" Type="System.Collections.Generic.IEnumerable&lt;TInner&gt;" />
        <Parameter Name="outerKeySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TOuter,TKey&gt;&gt;" />
        <Parameter Name="innerKeySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TInner,TKey&gt;&gt;" />
        <Parameter Name="resultSelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TOuter,TInner,TResult&gt;&gt;" />
        <Parameter Name="comparer" Type="System.Collections.Generic.IEqualityComparer&lt;TKey&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Join``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}},System.Collections.Generic.IEqualityComparer{``2})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Join``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}},System.Collections.Generic.IEqualityComparer{``2})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="outer" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Join``4(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.Linq.Expressions.Expression{System.Func{``1,``2}},System.Linq.Expressions.Expression{System.Func{``0,``1,``3}},System.Collections.Generic.IEqualityComparer{``2})" /> depends on the implementation of the type of the <paramref name="outer" /> parameter. The expected behavior is that of an inner join. The <paramref name="outerKeySelector" /> and <paramref name="innerKeySelector" /> functions are used to extract keys from <paramref name="outer" /> and <paramref name="inner" />, respectively. These keys are compared for equality by using <paramref name="comparer" />. The outcome of the comparisons is used to create a matching pair for each element in <paramref name="inner" /> that matches an element in <paramref name="outer" />. Then the <paramref name="resultSelector" /> function is invoked to project a result object from each pair of matching elements.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Correlates the elements of two sequences based on matching keys. A specified <see cref="T:System.Collections.Generic.IEqualityComparer`1" /> is used to compare keys.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that has elements of type <paramref name="TResult" /> obtained by performing an inner join on two sequences.</para>
        </returns>
        <param name="outer">
          <attribution license="cc4" from="Microsoft" modified="false" />The first sequence to join.</param>
        <param name="inner">
          <attribution license="cc4" from="Microsoft" modified="false" />The sequence to join to the first sequence.</param>
        <param name="outerKeySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract the join key from each element of the first sequence.</param>
        <param name="innerKeySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract the join key from each element of the second sequence.</param>
        <param name="resultSelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to create a result element from two matching elements.</param>
        <param name="comparer">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.Generic.IEqualityComparer`1" /> to hash and compare keys.</param>
        <typeparam name="TOuter">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the first sequence.</typeparam>
        <typeparam name="TInner">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the second sequence.</typeparam>
        <typeparam name="TKey">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the keys returned by the key selector functions.</typeparam>
        <typeparam name="TResult">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the result elements.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Last&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static TSource Last&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TSource Last&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TSource</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Last``1(System.Linq.IQueryable{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Last``1(System.Linq.IQueryable{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Last``1(System.Linq.IQueryable{``0})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the last element in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the last element in a sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The value at the last position in <paramref name="source" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> to return the last element of.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Last&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static TSource Last&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,bool&gt;&gt; predicate);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TSource Last&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, bool&gt;&gt; predicate) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TSource</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="predicate" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Boolean&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Last``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Last``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Last``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the last element in <paramref name="source" /> that satisfies the condition specified by <paramref name="predicate" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the last element of a sequence that satisfies a specified condition.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The last element in <paramref name="source" /> that passes the test specified by <paramref name="predicate" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> to return an element from.</param>
        <param name="predicate">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to test each element for a condition.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="LastOrDefault&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static TSource LastOrDefault&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TSource LastOrDefault&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TSource</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.LastOrDefault``1(System.Linq.IQueryable{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.LastOrDefault``1(System.Linq.IQueryable{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.LastOrDefault``1(System.Linq.IQueryable{``0})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the last element in <paramref name="source" />, or a default value if <paramref name="source" /> is empty.</para>
          <para>The <see cref="Overload:System.Linq.Queryable.LastOrDefault" /> method does not provide a way to specify a default value. If you want to specify a default value other than default(<paramref name="TSource" />), use the <see cref="M:System.Linq.Queryable.DefaultIfEmpty``1(System.Linq.IQueryable{``0},``0)" /> method as described in the Example section.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the last element in a sequence, or a default value if the sequence contains no elements.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>
            <unmanagedCodeEntityReference>default</unmanagedCodeEntityReference>(<paramref name="TSource" />) if <paramref name="source" /> is empty; otherwise, the last element in <paramref name="source" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> to return the last element of.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="LastOrDefault&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static TSource LastOrDefault&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,bool&gt;&gt; predicate);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TSource LastOrDefault&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, bool&gt;&gt; predicate) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TSource</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="predicate" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Boolean&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.LastOrDefault``1(System.Linq.IQueryable{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.LastOrDefault``1(System.Linq.IQueryable{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.LastOrDefault``1(System.Linq.IQueryable{``0})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the last element in <paramref name="source" /> that satisfies the condition specified by <paramref name="predicate" />. It returns a default value if there is no such element in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the last element of a sequence that satisfies a condition or a default value if no such element is found.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>
            <unmanagedCodeEntityReference>default</unmanagedCodeEntityReference>(<paramref name="TSource" />) if <paramref name="source" /> is empty or if no elements pass the test in the predicate function; otherwise, the last element of <paramref name="source" /> that passes the test in the predicate function.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> to return an element from.</param>
        <param name="predicate">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to test each element for a condition.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="LongCount&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static long LongCount&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig int64 LongCount&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Int64</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.LongCount``1(System.Linq.IQueryable{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.LongCount``1(System.Linq.IQueryable{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.LongCount``1(System.Linq.IQueryable{``0})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it counts the number of items in <paramref name="source" /> and returns an <see cref="T:System.Int64" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns an <see cref="T:System.Int64" /> that represents the total number of elements in a sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The number of elements in <paramref name="source" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> that contains the elements to be counted.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="LongCount&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static long LongCount&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,bool&gt;&gt; predicate);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig int64 LongCount&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, bool&gt;&gt; predicate) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Int64</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="predicate" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Boolean&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.LongCount``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.LongCount``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.LongCount``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it counts the number of items in <paramref name="source" /> that satisfy the condition specified by <paramref name="predicate" /> and returns an <see cref="T:System.Int64" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns an <see cref="T:System.Int64" /> that represents the number of elements in a sequence that satisfy a condition.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The number of elements in <paramref name="source" /> that satisfy the condition in the predicate function.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> that contains the elements to be counted.</param>
        <param name="predicate">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to test each element for a condition.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Max&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static TSource Max&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TSource Max&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TSource</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Max``1(System.Linq.IQueryable{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Max``1(System.Linq.IQueryable{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Max``1(System.Linq.IQueryable{``0})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the maximum value in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the maximum value in a generic <see cref="T:System.Linq.IQueryable`1" />.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The maximum value in the sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to determine the maximum of.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Max&lt;TSource,TResult&gt;">
      <MemberSignature Language="C#" Value="public static TResult Max&lt;TSource,TResult&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TResult&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TResult Max&lt;TSource, TResult&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TResult&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TResult</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TResult" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TResult&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Max``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Max``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Max``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it invokes <paramref name="selector" /> on each element in <paramref name="source" /> and returns the maximum value.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Invokes a projection function on each element of a generic <see cref="T:System.Linq.IQueryable`1" /> and returns the maximum resulting value.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The maximum value in the sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to determine the maximum of.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TResult">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the value returned by the function represented by <paramref name="selector" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Min&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static TSource Min&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TSource Min&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TSource</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Min``1(System.Linq.IQueryable{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Min``1(System.Linq.IQueryable{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Min``1(System.Linq.IQueryable{``0})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the minimum value in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the minimum value of a generic <see cref="T:System.Linq.IQueryable`1" />.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The minimum value in the sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to determine the minimum of.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Min&lt;TSource,TResult&gt;">
      <MemberSignature Language="C#" Value="public static TResult Min&lt;TSource,TResult&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TResult&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TResult Min&lt;TSource, TResult&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TResult&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TResult</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TResult" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TResult&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Min``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Min``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Min``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it invokes <paramref name="selector" /> on each element in <paramref name="source" /> and returns the minimum value.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Invokes a projection function on each element of a generic <see cref="T:System.Linq.IQueryable`1" /> and returns the minimum resulting value.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The minimum value in the sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to determine the minimum of.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TResult">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the value returned by the function represented by <paramref name="selector" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="OfType&lt;TResult&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TResult&gt; OfType&lt;TResult&gt; (this System.Linq.IQueryable source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TResult&gt; OfType&lt;TResult&gt;(class System.Linq.IQueryable source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TResult&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TResult" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The OfType method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling OfType itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling OfType depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it filters out any elements in <paramref name="source" /> that are not of type <paramref name="TResult" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Filters the elements of an <see cref="T:System.Linq.IQueryable" /> based on a specified type.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A collection that contains the elements from <paramref name="source" /> that have type <paramref name="TResult" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable" /> whose elements to filter.</param>
        <typeparam name="TResult">
          <attribution license="cc4" from="Microsoft" modified="false" />The type to filter the elements of the sequence on.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="OrderBy&lt;TSource,TKey&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IOrderedQueryable&lt;TSource&gt; OrderBy&lt;TSource,TKey&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TKey&gt;&gt; keySelector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IOrderedQueryable`1&lt;!!TSource&gt; OrderBy&lt;TSource, TKey&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TKey&gt;&gt; keySelector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IOrderedQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TKey" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="keySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TKey&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.OrderBy``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.OrderBy``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter. The result of calling <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> is cast to type <see cref="T:System.Linq.IOrderedQueryable`1" /> and returned.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.OrderBy``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it sorts the elements of <paramref name="source" /> based on the key obtained by invoking <paramref name="keySelector" /> on each element of <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Sorts the elements of a sequence in ascending order according to a key.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IOrderedQueryable`1" /> whose elements are sorted according to a key.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to order.</param>
        <param name="keySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract a key from an element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TKey">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the key returned by the function that is represented by <paramref name="keySelector" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="OrderBy&lt;TSource,TKey&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IOrderedQueryable&lt;TSource&gt; OrderBy&lt;TSource,TKey&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TKey&gt;&gt; keySelector, System.Collections.Generic.IComparer&lt;TKey&gt; comparer);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IOrderedQueryable`1&lt;!!TSource&gt; OrderBy&lt;TSource, TKey&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TKey&gt;&gt; keySelector, class System.Collections.Generic.IComparer`1&lt;!!TKey&gt; comparer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IOrderedQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TKey" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="keySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TKey&gt;&gt;" />
        <Parameter Name="comparer" Type="System.Collections.Generic.IComparer&lt;TKey&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.OrderBy``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Collections.Generic.IComparer{``1})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.OrderBy``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Collections.Generic.IComparer{``1})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter. The result of calling <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> is cast to type <see cref="T:System.Linq.IOrderedQueryable`1" /> and returned.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.OrderBy``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Collections.Generic.IComparer{``1})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it sorts the elements of <paramref name="source" /> based on the key obtained by invoking <paramref name="keySelector" /> on each element of <paramref name="source" />. The <paramref name="comparer" /> parameter is used to compare keys.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Sorts the elements of a sequence in ascending order by using a specified comparer.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IOrderedQueryable`1" /> whose elements are sorted according to a key.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to order.</param>
        <param name="keySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract a key from an element.</param>
        <param name="comparer">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.Generic.IComparer`1" /> to compare keys.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TKey">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the key returned by the function that is represented by <paramref name="keySelector" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="OrderByDescending&lt;TSource,TKey&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IOrderedQueryable&lt;TSource&gt; OrderByDescending&lt;TSource,TKey&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TKey&gt;&gt; keySelector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IOrderedQueryable`1&lt;!!TSource&gt; OrderByDescending&lt;TSource, TKey&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TKey&gt;&gt; keySelector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IOrderedQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TKey" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="keySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TKey&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.OrderByDescending``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.OrderByDescending``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter. The result of calling <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> is cast to type <see cref="T:System.Linq.IOrderedQueryable`1" /> and returned.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.OrderByDescending``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it sorts the elements of <paramref name="source" /> in descending order, based on the key obtained by invoking <paramref name="keySelector" /> on each element of <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Sorts the elements of a sequence in descending order according to a key.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IOrderedQueryable`1" /> whose elements are sorted in descending order according to a key.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to order.</param>
        <param name="keySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract a key from an element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TKey">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the key returned by the function that is represented by <paramref name="keySelector" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="OrderByDescending&lt;TSource,TKey&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IOrderedQueryable&lt;TSource&gt; OrderByDescending&lt;TSource,TKey&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TKey&gt;&gt; keySelector, System.Collections.Generic.IComparer&lt;TKey&gt; comparer);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IOrderedQueryable`1&lt;!!TSource&gt; OrderByDescending&lt;TSource, TKey&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TKey&gt;&gt; keySelector, class System.Collections.Generic.IComparer`1&lt;!!TKey&gt; comparer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IOrderedQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TKey" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="keySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TKey&gt;&gt;" />
        <Parameter Name="comparer" Type="System.Collections.Generic.IComparer&lt;TKey&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.OrderByDescending``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Collections.Generic.IComparer{``1})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.OrderByDescending``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Collections.Generic.IComparer{``1})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter. The result of calling <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> is cast to type <see cref="T:System.Linq.IOrderedQueryable`1" /> and returned.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.OrderByDescending``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Collections.Generic.IComparer{``1})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it sorts the elements of <paramref name="source" /> in descending order, based on the key obtained by invoking <paramref name="keySelector" /> on each element of <paramref name="source" />. The <paramref name="comparer" /> parameter is used to compare keys.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Sorts the elements of a sequence in descending order by using a specified comparer.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IOrderedQueryable`1" /> whose elements are sorted in descending order according to a key.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to order.</param>
        <param name="keySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract a key from an element.</param>
        <param name="comparer">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.Generic.IComparer`1" /> to compare keys.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TKey">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the key returned by the function that is represented by <paramref name="keySelector" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Reverse&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TSource&gt; Reverse&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TSource&gt; Reverse&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Reverse``1(System.Linq.IQueryable{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Reverse``1(System.Linq.IQueryable{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Reverse``1(System.Linq.IQueryable{``0})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it reverses the order of the elements in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Inverts the order of the elements in a sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> whose elements correspond to those of the input sequence in reverse order.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to reverse.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Select&lt;TSource,TResult&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TResult&gt; Select&lt;TSource,TResult&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,int,TResult&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TResult&gt; Select&lt;TSource, TResult&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`3&lt;!!TSource, int32, !!TResult&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TResult&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TResult" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Int32,TResult&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Select``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32,``1}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Select``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32,``1}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Select``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32,``1}})" /> depend on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it invokes <paramref name="selector" /> on each element of <paramref name="source" /> to project it into a different form.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Projects each element of a sequence into a new form by incorporating the element's index.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> whose elements are the result of invoking a projection function on each element of <paramref name="source" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to project.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TResult">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the value returned by the function represented by <paramref name="selector" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Select&lt;TSource,TResult&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TResult&gt; Select&lt;TSource,TResult&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TResult&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TResult&gt; Select&lt;TSource, TResult&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TResult&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TResult&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TResult" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TResult&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Select``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Select``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Select``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it invokes <paramref name="selector" /> on each element of <paramref name="source" /> to project it into a different form.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Projects each element of a sequence into a new form.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> whose elements are the result of invoking a projection function on each element of <paramref name="source" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to project.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TResult">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the value returned by the function represented by <paramref name="selector" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="SelectMany&lt;TSource,TResult&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TResult&gt; SelectMany&lt;TSource,TResult&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,System.Collections.Generic.IEnumerable&lt;TResult&gt;&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TResult&gt; SelectMany&lt;TSource, TResult&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, class System.Collections.Generic.IEnumerable`1&lt;!!TResult&gt;&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TResult&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TResult" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Collections.Generic.IEnumerable&lt;TResult&gt;&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.SelectMany``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Collections.Generic.IEnumerable{``1}}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.SelectMany``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Collections.Generic.IEnumerable{``1}}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.SelectMany``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Collections.Generic.IEnumerable{``1}}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it invokes <paramref name="selector" /> on each element of <paramref name="source" /> to project it into an enumerable form. It then concatenates the enumerable results into a single, one-dimensional sequence.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Projects each element of a sequence to an <see cref="T:System.Collections.Generic.IEnumerable`1" /> and combines the resulting sequences into one sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> whose elements are the result of invoking a one-to-many projection function on each element of the input sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to project.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TResult">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the sequence returned by the function represented by <paramref name="selector" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="SelectMany&lt;TSource,TResult&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TResult&gt; SelectMany&lt;TSource,TResult&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,int,System.Collections.Generic.IEnumerable&lt;TResult&gt;&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TResult&gt; SelectMany&lt;TSource, TResult&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`3&lt;!!TSource, int32, class System.Collections.Generic.IEnumerable`1&lt;!!TResult&gt;&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TResult&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TResult" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Int32,System.Collections.Generic.IEnumerable&lt;TResult&gt;&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.SelectMany``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32,System.Collections.Generic.IEnumerable{``1}}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.SelectMany``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32,System.Collections.Generic.IEnumerable{``1}}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.SelectMany``2(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32,System.Collections.Generic.IEnumerable{``1}}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it invokes <paramref name="selector" /> on each element of <paramref name="source" /> to project it into an enumerable form. Each enumerable result incorporates the index of the source element. It then concatenates the enumerable results into a single, one-dimensional sequence.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Projects each element of a sequence to an <see cref="T:System.Collections.Generic.IEnumerable`1" /> and combines the resulting sequences into one sequence. The index of each source element is used in the projected form of that element.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> whose elements are the result of invoking a one-to-many projection function on each element of the input sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to project.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element; the second parameter of this function represents the index of the source element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TResult">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the sequence returned by the function represented by <paramref name="selector" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="SelectMany&lt;TSource,TCollection,TResult&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TResult&gt; SelectMany&lt;TSource,TCollection,TResult&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,System.Collections.Generic.IEnumerable&lt;TCollection&gt;&gt;&gt; collectionSelector, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TCollection,TResult&gt;&gt; resultSelector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TResult&gt; SelectMany&lt;TSource, TCollection, TResult&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, class System.Collections.Generic.IEnumerable`1&lt;!!TCollection&gt;&gt;&gt; collectionSelector, class System.Linq.Expressions.Expression`1&lt;class System.Func`3&lt;!!TSource, !!TCollection, !!TResult&gt;&gt; resultSelector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TResult&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TCollection" />
        <TypeParameter Name="TResult" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="collectionSelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Collections.Generic.IEnumerable&lt;TCollection&gt;&gt;&gt;" />
        <Parameter Name="resultSelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TCollection,TResult&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.SelectMany``3(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Collections.Generic.IEnumerable{``1}}},System.Linq.Expressions.Expression{System.Func{``0,``1,``2}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.SelectMany``3(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Collections.Generic.IEnumerable{``1}}},System.Linq.Expressions.Expression{System.Func{``0,``1,``2}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.SelectMany``3(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Collections.Generic.IEnumerable{``1}}},System.Linq.Expressions.Expression{System.Func{``0,``1,``2}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it invokes <paramref name="collectionSelector" /> on each element of <paramref name="source" /> to project it into an enumerable form. Then the function represented by <paramref name="resultSelector" /> is invoked on each element in each intermediate sequence. The resulting values are concatenated into a single, one-dimensional sequence.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Projects each element of a sequence to an <see cref="T:System.Collections.Generic.IEnumerable`1" /> and invokes a result selector function on each element therein. The resulting values from each intermediate sequence are combined into a single, one-dimensional sequence and returned.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> whose elements are the result of invoking the one-to-many projection function <paramref name="collectionSelector" /> on each element of <paramref name="source" /> and then mapping each of those sequence elements and their corresponding <paramref name="source" /> element to a result element.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to project.</param>
        <param name="collectionSelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element of the input sequence.</param>
        <param name="resultSelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element of each intermediate sequence.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TCollection">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the intermediate elements collected by the function represented by <paramref name="collectionSelector" />.</typeparam>
        <typeparam name="TResult">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the resulting sequence.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="SelectMany&lt;TSource,TCollection,TResult&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TResult&gt; SelectMany&lt;TSource,TCollection,TResult&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,int,System.Collections.Generic.IEnumerable&lt;TCollection&gt;&gt;&gt; collectionSelector, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TCollection,TResult&gt;&gt; resultSelector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TResult&gt; SelectMany&lt;TSource, TCollection, TResult&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`3&lt;!!TSource, int32, class System.Collections.Generic.IEnumerable`1&lt;!!TCollection&gt;&gt;&gt; collectionSelector, class System.Linq.Expressions.Expression`1&lt;class System.Func`3&lt;!!TSource, !!TCollection, !!TResult&gt;&gt; resultSelector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TResult&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TCollection" />
        <TypeParameter Name="TResult" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="collectionSelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Int32,System.Collections.Generic.IEnumerable&lt;TCollection&gt;&gt;&gt;" />
        <Parameter Name="resultSelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TCollection,TResult&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.SelectMany``3(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32,System.Collections.Generic.IEnumerable{``1}}},System.Linq.Expressions.Expression{System.Func{``0,``1,``2}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.SelectMany``3(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32,System.Collections.Generic.IEnumerable{``1}}},System.Linq.Expressions.Expression{System.Func{``0,``1,``2}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.SelectMany``3(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32,System.Collections.Generic.IEnumerable{``1}}},System.Linq.Expressions.Expression{System.Func{``0,``1,``2}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it invokes <paramref name="collectionSelector" /> on each element of <paramref name="source" /> to project it into an enumerable form. Each enumerable result incorporates the source element's index. Then the function represented by <paramref name="resultSelector" /> is invoked on each element in each intermediate sequence. The resulting values are concatenated into a single, one-dimensional sequence.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Projects each element of a sequence to an <see cref="T:System.Collections.Generic.IEnumerable`1" /> that incorporates the index of the source element that produced it. A result selector function is invoked on each element of each intermediate sequence, and the resulting values are combined into a single, one-dimensional sequence and returned.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> whose elements are the result of invoking the one-to-many projection function <paramref name="collectionSelector" /> on each element of <paramref name="source" /> and then mapping each of those sequence elements and their corresponding <paramref name="source" /> element to a result element.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values to project.</param>
        <param name="collectionSelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element of the input sequence; the second parameter of this function represents the index of the source element.</param>
        <param name="resultSelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element of each intermediate sequence.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TCollection">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the intermediate elements collected by the function represented by <paramref name="collectionSelector" />.</typeparam>
        <typeparam name="TResult">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the resulting sequence.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="SequenceEqual&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static bool SequenceEqual&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source1, System.Collections.Generic.IEnumerable&lt;TSource&gt; source2);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig bool SequenceEqual&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source1, class System.Collections.Generic.IEnumerable`1&lt;!!TSource&gt; source2) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source1" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="source2" Type="System.Collections.Generic.IEnumerable&lt;TSource&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.SequenceEqual``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.SequenceEqual``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source1" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.SequenceEqual``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0})" /> depends on the implementation of the type of the <paramref name="source1" /> parameter. The expected behavior is that it determines if the two source sequences are equal.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Determines whether two sequences are equal by using the default equality comparer to compare elements.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>true if the two source sequences are of equal length and their corresponding elements compare equal; otherwise, false.</para>
        </returns>
        <param name="source1">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> whose elements to compare to those of <paramref name="source2" />.</param>
        <param name="source2">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.Generic.IEnumerable`1" /> whose elements to compare to those of the first sequence.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the input sequences.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="SequenceEqual&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static bool SequenceEqual&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source1, System.Collections.Generic.IEnumerable&lt;TSource&gt; source2, System.Collections.Generic.IEqualityComparer&lt;TSource&gt; comparer);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig bool SequenceEqual&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source1, class System.Collections.Generic.IEnumerable`1&lt;!!TSource&gt; source2, class System.Collections.Generic.IEqualityComparer`1&lt;!!TSource&gt; comparer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source1" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="source2" Type="System.Collections.Generic.IEnumerable&lt;TSource&gt;" />
        <Parameter Name="comparer" Type="System.Collections.Generic.IEqualityComparer&lt;TSource&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.SequenceEqual``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.SequenceEqual``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source1" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.SequenceEqual``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})" /> depends on the implementation of the type of the <paramref name="source1" /> parameter. The expected behavior is that it determines if the two source sequences are equal by using <paramref name="comparer" /> to compare elements.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Determines whether two sequences are equal by using a specified <see cref="T:System.Collections.Generic.IEqualityComparer`1" /> to compare elements.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>true if the two source sequences are of equal length and their corresponding elements compare equal; otherwise, false.</para>
        </returns>
        <param name="source1">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> whose elements to compare to those of <paramref name="source2" />.</param>
        <param name="source2">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.Generic.IEnumerable`1" /> whose elements to compare to those of the first sequence.</param>
        <param name="comparer">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.Generic.IEqualityComparer`1" /> to use to compare elements.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the input sequences.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Single&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static TSource Single&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TSource Single&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TSource</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Single``1(System.Linq.IQueryable{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Single``1(System.Linq.IQueryable{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Single``1(System.Linq.IQueryable{``0})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the only element in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the only element of a sequence, and throws an exception if there is not exactly one element in the sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The single element of the input sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> to return the single element of.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Single&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static TSource Single&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,bool&gt;&gt; predicate);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TSource Single&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, bool&gt;&gt; predicate) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TSource</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="predicate" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Boolean&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Single``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Single``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Single``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the only element in <paramref name="source" /> that satisfies the condition specified by <paramref name="predicate" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the only element of a sequence that satisfies a specified condition, and throws an exception if more than one such element exists.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The single element of the input sequence that satisfies the condition in <paramref name="predicate" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> to return a single element from.</param>
        <param name="predicate">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to test an element for a condition.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="SingleOrDefault&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static TSource SingleOrDefault&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TSource SingleOrDefault&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TSource</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.SingleOrDefault``1(System.Linq.IQueryable{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.SingleOrDefault``1(System.Linq.IQueryable{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.SingleOrDefault``1(System.Linq.IQueryable{``0})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the only element in <paramref name="source" />, or a default value if <paramref name="source" /> is empty.</para>
          <para>The <see cref="Overload:System.Linq.Queryable.SingleOrDefault" /> method does not provide a way to specify a default value. If you want to specify a default value other than default(<paramref name="TSource" />), use the <see cref="M:System.Linq.Queryable.DefaultIfEmpty``1(System.Linq.IQueryable{``0},``0)" /> method as described in the Example section.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the only element of a sequence, or a default value if the sequence is empty; this method throws an exception if there is more than one element in the sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The single element of the input sequence, or <unmanagedCodeEntityReference>default</unmanagedCodeEntityReference>(<paramref name="TSource" />) if the sequence contains no elements.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> to return the single element of.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="SingleOrDefault&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static TSource SingleOrDefault&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,bool&gt;&gt; predicate);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig !!TSource SingleOrDefault&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, bool&gt;&gt; predicate) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>TSource</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="predicate" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Boolean&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.SingleOrDefault``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.SingleOrDefault``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.SingleOrDefault``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the only element in <paramref name="source" /> that satisfies the condition specified by <paramref name="predicate" />, or a default value if no such element exists.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns the only element of a sequence that satisfies a specified condition or a default value if no such element exists; this method throws an exception if more than one element satisfies the condition.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The single element of the input sequence that satisfies the condition in <paramref name="predicate" />, or <unmanagedCodeEntityReference>default</unmanagedCodeEntityReference>(<paramref name="TSource" />) if no such element is found.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> to return a single element from.</param>
        <param name="predicate">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to test an element for a condition.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Skip&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TSource&gt; Skip&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, int count);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TSource&gt; Skip&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, int32 count) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="count" Type="System.Int32" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Skip``1(System.Linq.IQueryable{``0},System.Int32)" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Skip``1(System.Linq.IQueryable{``0},System.Int32)" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Skip``1(System.Linq.IQueryable{``0},System.Int32)" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it skips the first <paramref name="count" /> elements in <paramref name="source" /> and returns the remaining elements.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Bypasses a specified number of elements in a sequence and then returns the remaining elements.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains elements that occur after the specified index in the input sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> to return elements from.</param>
        <param name="count">
          <attribution license="cc4" from="Microsoft" modified="false" />The number of elements to skip before returning the remaining elements.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="SkipWhile&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TSource&gt; SkipWhile&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,bool&gt;&gt; predicate);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TSource&gt; SkipWhile&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, bool&gt;&gt; predicate) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="predicate" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Boolean&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.SkipWhile``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.SkipWhile``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.SkipWhile``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it applies <paramref name="predicate" /> to each element in <paramref name="source" /> until it finds an element for which <paramref name="predicate" /> returns false. That element and all the remaining elements are returned.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Bypasses elements in a sequence as long as a specified condition is true and then returns the remaining elements.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains elements from <paramref name="source" /> starting at the first element in the linear series that does not pass the test specified by <paramref name="predicate" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> to return elements from.</param>
        <param name="predicate">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to test each element for a condition.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="SkipWhile&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TSource&gt; SkipWhile&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,int,bool&gt;&gt; predicate);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TSource&gt; SkipWhile&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`3&lt;!!TSource, int32, bool&gt;&gt; predicate) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="predicate" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Int32,System.Boolean&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.SkipWhile``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32,System.Boolean}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.SkipWhile``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32,System.Boolean}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.SkipWhile``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32,System.Boolean}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it applies <paramref name="predicate" /> to each element in <paramref name="source" /> until it finds an element for which <paramref name="predicate" /> returns false. That element and all the remaining elements are returned. The index of each source element is provided as the second argument to <paramref name="predicate" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Bypasses elements in a sequence as long as a specified condition is true and then returns the remaining elements. The element's index is used in the logic of the predicate function.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains elements from <paramref name="source" /> starting at the first element in the linear series that does not pass the test specified by <paramref name="predicate" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> to return elements from.</param>
        <param name="predicate">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to test each element for a condition; the second parameter of this function represents the index of the source element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Sum">
      <MemberSignature Language="C#" Value="public static decimal Sum (this System.Linq.IQueryable&lt;decimal&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Decimal Sum(class System.Linq.IQueryable`1&lt;valuetype System.Decimal&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Decimal</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;System.Decimal&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Decimal})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Decimal})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Decimal})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the sum of the values in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the sum of a sequence of <see cref="T:System.Decimal" /> values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The sum of the values in the sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of <see cref="T:System.Decimal" /> values to calculate the sum of.</param>
      </Docs>
    </Member>
    <Member MemberName="Sum">
      <MemberSignature Language="C#" Value="public static double Sum (this System.Linq.IQueryable&lt;double&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig float64 Sum(class System.Linq.IQueryable`1&lt;float64&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Double</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;System.Double&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Double})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Double})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Double})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the sum of the values in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the sum of a sequence of <see cref="T:System.Double" /> values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The sum of the values in the sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of <see cref="T:System.Double" /> values to calculate the sum of.</param>
      </Docs>
    </Member>
    <Member MemberName="Sum">
      <MemberSignature Language="C#" Value="public static int Sum (this System.Linq.IQueryable&lt;int&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig int32 Sum(class System.Linq.IQueryable`1&lt;int32&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;System.Int32&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Int32})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Int32})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Int32})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the sum of the values in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the sum of a sequence of <see cref="T:System.Int32" /> values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The sum of the values in the sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of <see cref="T:System.Int32" /> values to calculate the sum of.</param>
      </Docs>
    </Member>
    <Member MemberName="Sum">
      <MemberSignature Language="C#" Value="public static long Sum (this System.Linq.IQueryable&lt;long&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig int64 Sum(class System.Linq.IQueryable`1&lt;int64&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Int64</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;System.Int64&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Int64})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Int64})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Int64})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the sum of the values in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the sum of a sequence of <see cref="T:System.Int64" /> values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The sum of the values in the sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of <see cref="T:System.Int64" /> values to calculate the sum of.</param>
      </Docs>
    </Member>
    <Member MemberName="Sum">
      <MemberSignature Language="C#" Value="public static Nullable&lt;decimal&gt; Sum (this System.Linq.IQueryable&lt;Nullable&lt;decimal&gt;&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Nullable`1&lt;valuetype System.Decimal&gt; Sum(class System.Linq.IQueryable`1&lt;valuetype System.Nullable`1&lt;valuetype System.Decimal&gt;&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Nullable&lt;System.Decimal&gt;</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;System.Nullable&lt;System.Decimal&gt;&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Nullable{System.Decimal}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Nullable{System.Decimal}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Nullable{System.Decimal}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the sum of the values in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the sum of a sequence of nullable <see cref="T:System.Decimal" /> values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The sum of the values in the sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of nullable <see cref="T:System.Decimal" /> values to calculate the sum of.</param>
      </Docs>
    </Member>
    <Member MemberName="Sum">
      <MemberSignature Language="C#" Value="public static Nullable&lt;double&gt; Sum (this System.Linq.IQueryable&lt;Nullable&lt;double&gt;&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Nullable`1&lt;float64&gt; Sum(class System.Linq.IQueryable`1&lt;valuetype System.Nullable`1&lt;float64&gt;&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Nullable&lt;System.Double&gt;</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;System.Nullable&lt;System.Double&gt;&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Nullable{System.Double}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Nullable{System.Double}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Nullable{System.Double}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the sum of the values in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the sum of a sequence of nullable <see cref="T:System.Double" /> values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The sum of the values in the sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of nullable <see cref="T:System.Double" /> values to calculate the sum of.</param>
      </Docs>
    </Member>
    <Member MemberName="Sum">
      <MemberSignature Language="C#" Value="public static Nullable&lt;int&gt; Sum (this System.Linq.IQueryable&lt;Nullable&lt;int&gt;&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Nullable`1&lt;int32&gt; Sum(class System.Linq.IQueryable`1&lt;valuetype System.Nullable`1&lt;int32&gt;&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Nullable&lt;System.Int32&gt;</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;System.Nullable&lt;System.Int32&gt;&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Nullable{System.Int32}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Nullable{System.Int32}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Nullable{System.Int32}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the sum of the values in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the sum of a sequence of nullable <see cref="T:System.Int32" /> values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The sum of the values in the sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of nullable <see cref="T:System.Int32" /> values to calculate the sum of.</param>
      </Docs>
    </Member>
    <Member MemberName="Sum">
      <MemberSignature Language="C#" Value="public static Nullable&lt;long&gt; Sum (this System.Linq.IQueryable&lt;Nullable&lt;long&gt;&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Nullable`1&lt;int64&gt; Sum(class System.Linq.IQueryable`1&lt;valuetype System.Nullable`1&lt;int64&gt;&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Nullable&lt;System.Int64&gt;</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;System.Nullable&lt;System.Int64&gt;&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Nullable{System.Int64}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Nullable{System.Int64}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Nullable{System.Int64}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the sum of the values in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the sum of a sequence of nullable <see cref="T:System.Int64" /> values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The sum of the values in the sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of nullable <see cref="T:System.Int64" /> values to calculate the sum of.</param>
      </Docs>
    </Member>
    <Member MemberName="Sum">
      <MemberSignature Language="C#" Value="public static Nullable&lt;float&gt; Sum (this System.Linq.IQueryable&lt;Nullable&lt;float&gt;&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Nullable`1&lt;float32&gt; Sum(class System.Linq.IQueryable`1&lt;valuetype System.Nullable`1&lt;float32&gt;&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Nullable&lt;System.Single&gt;</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;System.Nullable&lt;System.Single&gt;&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Nullable{System.Single}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Nullable{System.Single}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Nullable{System.Single}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the sum of the values in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the sum of a sequence of nullable <see cref="T:System.Single" /> values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The sum of the values in the sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of nullable <see cref="T:System.Single" /> values to calculate the sum of.</param>
      </Docs>
    </Member>
    <Member MemberName="Sum">
      <MemberSignature Language="C#" Value="public static float Sum (this System.Linq.IQueryable&lt;float&gt; source);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig float32 Sum(class System.Linq.IQueryable`1&lt;float32&gt; source) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Single</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;System.Single&gt;" RefType="this" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Single})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Single})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Sum(System.Linq.IQueryable{System.Single})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the sum of the values in <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the sum of a sequence of <see cref="T:System.Single" /> values.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The sum of the values in the sequence.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of <see cref="T:System.Single" /> values to calculate the sum of.</param>
      </Docs>
    </Member>
    <Member MemberName="Sum&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static decimal Sum&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,decimal&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Decimal Sum&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, valuetype System.Decimal&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Decimal</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Decimal&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Decimal}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Decimal}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Decimal}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it invokes <paramref name="selector" /> on each element of <paramref name="source" /> and returns the sum of the resulting values.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the sum of the sequence of <see cref="T:System.Decimal" /> values that is obtained by invoking a projection function on each element of the input sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The sum of the projected values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values of type <paramref name="TSource" />.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Sum&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static double Sum&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,double&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig float64 Sum&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, float64&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Double</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Double&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Double}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Double}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Double}})" /> depends on the implementation of the type of he <paramref name="source" /> parameter. The expected behavior is that it invokes <paramref name="selector" /> on each element of <paramref name="source" /> and returns the sum of the resulting values.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the sum of the sequence of <see cref="T:System.Double" /> values that is obtained by invoking a projection function on each element of the input sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The sum of the projected values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values of type <paramref name="TSource" />.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Sum&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static int Sum&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,int&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig int32 Sum&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, int32&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Int32&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it invokes <paramref name="selector" /> on each element of <paramref name="source" /> and returns the sum of the resulting values.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the sum of the sequence of <see cref="T:System.Int32" /> values that is obtained by invoking a projection function on each element of the input sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The sum of the projected values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values of type <paramref name="TSource" />.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Sum&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static long Sum&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,long&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig int64 Sum&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, int64&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Int64</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Int64&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int64}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int64}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int64}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it invokes <paramref name="selector" /> on each element of <paramref name="source" /> and returns the sum of the resulting values.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the sum of the sequence of <see cref="T:System.Int64" /> values that is obtained by invoking a projection function on each element of the input sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The sum of the projected values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values of type <paramref name="TSource" />.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Sum&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static Nullable&lt;decimal&gt; Sum&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,Nullable&lt;decimal&gt;&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Nullable`1&lt;valuetype System.Decimal&gt; Sum&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, valuetype System.Nullable`1&lt;valuetype System.Decimal&gt;&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Nullable&lt;System.Decimal&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Nullable&lt;System.Decimal&gt;&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Decimal}}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Decimal}}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Decimal}}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it invokes <paramref name="selector" /> on each element of <paramref name="source" /> and returns the sum of the resulting values.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the sum of the sequence of nullable <see cref="T:System.Decimal" /> values that is obtained by invoking a projection function on each element of the input sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The sum of the projected values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values of type <paramref name="TSource" />.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Sum&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static Nullable&lt;double&gt; Sum&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,Nullable&lt;double&gt;&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Nullable`1&lt;float64&gt; Sum&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, valuetype System.Nullable`1&lt;float64&gt;&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Nullable&lt;System.Double&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Nullable&lt;System.Double&gt;&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Double}}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Double}}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Double}}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it invokes <paramref name="selector" /> on each element of <paramref name="source" /> and returns the sum of the resulting values.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the sum of the sequence of nullable <see cref="T:System.Double" /> values that is obtained by invoking a projection function on each element of the input sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The sum of the projected values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values of type <paramref name="TSource" />.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Sum&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static Nullable&lt;int&gt; Sum&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,Nullable&lt;int&gt;&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Nullable`1&lt;int32&gt; Sum&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, valuetype System.Nullable`1&lt;int32&gt;&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Nullable&lt;System.Int32&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Nullable&lt;System.Int32&gt;&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Int32}}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Int32}}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Int32}}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it invokes <paramref name="selector" /> on each element of <paramref name="source" /> and returns the sum of the resulting values.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the sum of the sequence of nullable <see cref="T:System.Int32" /> values that is obtained by invoking a projection function on each element of the input sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The sum of the projected values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values of type <paramref name="TSource" />.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Sum&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static Nullable&lt;long&gt; Sum&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,Nullable&lt;long&gt;&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Nullable`1&lt;int64&gt; Sum&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, valuetype System.Nullable`1&lt;int64&gt;&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Nullable&lt;System.Int64&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Nullable&lt;System.Int64&gt;&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Int64}}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Int64}}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Int64}}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it invokes <paramref name="selector" /> on each element of <paramref name="source" /> and returns the sum of the resulting values.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the sum of the sequence of nullable <see cref="T:System.Int64" /> values that is obtained by invoking a projection function on each element of the input sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The sum of the projected values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values of type <paramref name="TSource" />.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Sum&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static Nullable&lt;float&gt; Sum&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,Nullable&lt;float&gt;&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Nullable`1&lt;float32&gt; Sum&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, valuetype System.Nullable`1&lt;float32&gt;&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Nullable&lt;System.Single&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Nullable&lt;System.Single&gt;&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Single}}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Single}}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Nullable{System.Single}}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it invokes <paramref name="selector" /> on each element of <paramref name="source" /> and returns the sum of the resulting values.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the sum of the sequence of nullable <see cref="T:System.Single" /> values that is obtained by invoking a projection function on each element of the input sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The sum of the projected values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values of type <paramref name="TSource" />.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Sum&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static float Sum&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,float&gt;&gt; selector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig float32 Sum&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, float32&gt;&gt; selector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Single</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="selector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Single&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Single}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Single}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.Execute``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Sum``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Single}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it invokes <paramref name="selector" /> on each element of <paramref name="source" /> and returns the sum of the resulting values.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Computes the sum of the sequence of <see cref="T:System.Single" /> values that is obtained by invoking a projection function on each element of the input sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The sum of the projected values.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence of values of type <paramref name="TSource" />.</param>
        <param name="selector">
          <attribution license="cc4" from="Microsoft" modified="false" />A projection function to apply to each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Take&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TSource&gt; Take&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, int count);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TSource&gt; Take&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, int32 count) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="count" Type="System.Int32" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Take``1(System.Linq.IQueryable{``0},System.Int32)" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Take``1(System.Linq.IQueryable{``0},System.Int32)" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Take``1(System.Linq.IQueryable{``0},System.Int32)" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it takes the first <paramref name="count" /> elements from the start of <paramref name="source" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns a specified number of contiguous elements from the start of a sequence.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains the specified number of elements from the start of <paramref name="source" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />The sequence to return elements from.</param>
        <param name="count">
          <attribution license="cc4" from="Microsoft" modified="false" />The number of elements to return.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="TakeWhile&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TSource&gt; TakeWhile&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,bool&gt;&gt; predicate);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TSource&gt; TakeWhile&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, bool&gt;&gt; predicate) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="predicate" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Boolean&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.TakeWhile``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.TakeWhile``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.TakeWhile``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it applies <paramref name="predicate" /> to each element in <paramref name="source" /> until it finds an element for which <paramref name="predicate" /> returns false. It returns all the elements up until that point.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns elements from a sequence as long as a specified condition is true.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains elements from the input sequence occurring before the element at which the test specified by <paramref name="predicate" /> no longer passes.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />The sequence to return elements from.</param>
        <param name="predicate">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to test each element for a condition.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="TakeWhile&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TSource&gt; TakeWhile&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,int,bool&gt;&gt; predicate);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TSource&gt; TakeWhile&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`3&lt;!!TSource, int32, bool&gt;&gt; predicate) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="predicate" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Int32,System.Boolean&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.TakeWhile``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32,System.Boolean}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.TakeWhile``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32,System.Boolean}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.TakeWhile``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32,System.Boolean}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it applies <paramref name="predicate" /> to each element in <paramref name="source" /> until it finds an element for which <paramref name="predicate" /> returns false. It returns all the elements up until that point. The index of each source element is provided as the second argument to <paramref name="predicate" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Returns elements from a sequence as long as a specified condition is true. The element's index is used in the logic of the predicate function.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains elements from the input sequence occurring before the element at which the test specified by <paramref name="predicate" /> no longer passes.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />The sequence to return elements from.</param>
        <param name="predicate">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to test each element for a condition; the second parameter of the function represents the index of the element in the source sequence.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="ThenBy&lt;TSource,TKey&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IOrderedQueryable&lt;TSource&gt; ThenBy&lt;TSource,TKey&gt; (this System.Linq.IOrderedQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TKey&gt;&gt; keySelector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IOrderedQueryable`1&lt;!!TSource&gt; ThenBy&lt;TSource, TKey&gt;(class System.Linq.IOrderedQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TKey&gt;&gt; keySelector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IOrderedQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TKey" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IOrderedQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="keySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TKey&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.ThenBy``2(System.Linq.IOrderedQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.ThenBy``2(System.Linq.IOrderedQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter. The result of calling <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> is cast to type <see cref="T:System.Linq.IOrderedQueryable`1" /> and returned.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.ThenBy``2(System.Linq.IOrderedQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it performs a secondary sort of the elements of <paramref name="source" /> based on the key obtained by invoking <paramref name="keySelector" /> on each element of <paramref name="source" />. All previously established sort orders are preserved.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Performs a subsequent ordering of the elements in a sequence in ascending order according to a key.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IOrderedQueryable`1" /> whose elements are sorted according to a key.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IOrderedQueryable`1" /> that contains elements to sort.</param>
        <param name="keySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract a key from each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TKey">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the key returned by the function represented by <paramref name="keySelector" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="ThenBy&lt;TSource,TKey&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IOrderedQueryable&lt;TSource&gt; ThenBy&lt;TSource,TKey&gt; (this System.Linq.IOrderedQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TKey&gt;&gt; keySelector, System.Collections.Generic.IComparer&lt;TKey&gt; comparer);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IOrderedQueryable`1&lt;!!TSource&gt; ThenBy&lt;TSource, TKey&gt;(class System.Linq.IOrderedQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TKey&gt;&gt; keySelector, class System.Collections.Generic.IComparer`1&lt;!!TKey&gt; comparer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IOrderedQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TKey" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IOrderedQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="keySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TKey&gt;&gt;" />
        <Parameter Name="comparer" Type="System.Collections.Generic.IComparer&lt;TKey&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.ThenBy``2(System.Linq.IOrderedQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Collections.Generic.IComparer{``1})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.ThenBy``2(System.Linq.IOrderedQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Collections.Generic.IComparer{``1})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter. The result of calling <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> is cast to type <see cref="T:System.Linq.IOrderedQueryable`1" /> and returned.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.ThenBy``2(System.Linq.IOrderedQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Collections.Generic.IComparer{``1})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it performs a secondary sort of the elements of <paramref name="source" /> based on the key obtained by invoking <paramref name="keySelector" /> on each element of <paramref name="source" />. All previously established sort orders are preserved. The <paramref name="comparer" /> parameter is used to compare key values.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Performs a subsequent ordering of the elements in a sequence in ascending order by using a specified comparer.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IOrderedQueryable`1" /> whose elements are sorted according to a key.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IOrderedQueryable`1" /> that contains elements to sort.</param>
        <param name="keySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract a key from each element.</param>
        <param name="comparer">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.Generic.IComparer`1" /> to compare keys.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TKey">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the key returned by the function represented by <paramref name="keySelector" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="ThenByDescending&lt;TSource,TKey&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IOrderedQueryable&lt;TSource&gt; ThenByDescending&lt;TSource,TKey&gt; (this System.Linq.IOrderedQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TKey&gt;&gt; keySelector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IOrderedQueryable`1&lt;!!TSource&gt; ThenByDescending&lt;TSource, TKey&gt;(class System.Linq.IOrderedQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TKey&gt;&gt; keySelector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IOrderedQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TKey" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IOrderedQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="keySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TKey&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.ThenByDescending``2(System.Linq.IOrderedQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.ThenByDescending``2(System.Linq.IOrderedQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter. The result of calling <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> is cast to type <see cref="T:System.Linq.IOrderedQueryable`1" /> and returned.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.ThenByDescending``2(System.Linq.IOrderedQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it performs a secondary sort of the elements of <paramref name="source" /> in descending order, based on the key obtained by invoking <paramref name="keySelector" /> on each element of <paramref name="source" />. All previously established sort orders are preserved.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Performs a subsequent ordering of the elements in a sequence in descending order, according to a key.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IOrderedQueryable`1" /> whose elements are sorted in descending order according to a key.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IOrderedQueryable`1" /> that contains elements to sort.</param>
        <param name="keySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract a key from each element.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TKey">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the key returned by the function represented by <paramref name="keySelector" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="ThenByDescending&lt;TSource,TKey&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IOrderedQueryable&lt;TSource&gt; ThenByDescending&lt;TSource,TKey&gt; (this System.Linq.IOrderedQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,TKey&gt;&gt; keySelector, System.Collections.Generic.IComparer&lt;TKey&gt; comparer);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IOrderedQueryable`1&lt;!!TSource&gt; ThenByDescending&lt;TSource, TKey&gt;(class System.Linq.IOrderedQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, !!TKey&gt;&gt; keySelector, class System.Collections.Generic.IComparer`1&lt;!!TKey&gt; comparer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IOrderedQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
        <TypeParameter Name="TKey" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IOrderedQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="keySelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,TKey&gt;&gt;" />
        <Parameter Name="comparer" Type="System.Collections.Generic.IComparer&lt;TKey&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.ThenBy``2(System.Linq.IOrderedQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Collections.Generic.IComparer{``1})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.ThenBy``2(System.Linq.IOrderedQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Collections.Generic.IComparer{``1})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter. The result of calling <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> is cast to type <see cref="T:System.Linq.IOrderedQueryable`1" /> and returned.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.ThenBy``2(System.Linq.IOrderedQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Collections.Generic.IComparer{``1})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it performs a secondary sort of the elements of <paramref name="source" /> in descending order, based on the key obtained by invoking <paramref name="keySelector" /> on each element of <paramref name="source" />. All previously established sort orders are preserved. The <paramref name="comparer" /> parameter is used to compare key values.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Performs a subsequent ordering of the elements in a sequence in descending order by using a specified comparer.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>A collection whose elements are sorted in descending order according to a key.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IOrderedQueryable`1" /> that contains elements to sort.</param>
        <param name="keySelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to extract a key from each element.</param>
        <param name="comparer">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.Generic.IComparer`1" /> to compare keys.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
        <typeparam name="TKey">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the key that is returned by the <paramref name="keySelector" /> function.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Union&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TSource&gt; Union&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source1, System.Collections.Generic.IEnumerable&lt;TSource&gt; source2);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TSource&gt; Union&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source1, class System.Collections.Generic.IEnumerable`1&lt;!!TSource&gt; source2) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source1" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="source2" Type="System.Collections.Generic.IEnumerable&lt;TSource&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Union``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Union``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source1" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Union``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0})" /> depends on the implementation of the type of the <paramref name="source1" /> parameter. The expected behavior is that the set union of the elements in <paramref name="source1" /> and <paramref name="source2" /> is returned.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Produces the set union of two sequences by using the default equality comparer.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains the elements from both input sequences, excluding duplicates.</para>
        </returns>
        <param name="source1">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence whose distinct elements form the first set for the union operation.</param>
        <param name="source2">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence whose distinct elements form the second set for the union operation.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the input sequences.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Union&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TSource&gt; Union&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source1, System.Collections.Generic.IEnumerable&lt;TSource&gt; source2, System.Collections.Generic.IEqualityComparer&lt;TSource&gt; comparer);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TSource&gt; Union&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source1, class System.Collections.Generic.IEnumerable`1&lt;!!TSource&gt; source2, class System.Collections.Generic.IEqualityComparer`1&lt;!!TSource&gt; comparer) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source1" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="source2" Type="System.Collections.Generic.IEnumerable&lt;TSource&gt;" />
        <Parameter Name="comparer" Type="System.Collections.Generic.IEqualityComparer&lt;TSource&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Union``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Union``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source1" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Union``1(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})" /> depends on the implementation of the type of the <paramref name="source1" /> parameter. The expected behavior is that the set union of the elements in <paramref name="source1" /> and <paramref name="source2" /> is returned. The <paramref name="comparer" /> parameter is used to compare values.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Produces the set union of two sequences by using a specified <see cref="T:System.Collections.Generic.IEqualityComparer`1" />.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains the elements from both input sequences, excluding duplicates.</para>
        </returns>
        <param name="source1">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence whose distinct elements form the first set for the union operation.</param>
        <param name="source2">
          <attribution license="cc4" from="Microsoft" modified="false" />A sequence whose distinct elements form the second set for the union operation.</param>
        <param name="comparer">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.Generic.IEqualityComparer`1" /> to compare values.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the input sequences.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Where&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TSource&gt; Where&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,bool&gt;&gt; predicate);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TSource&gt; Where&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`2&lt;!!TSource, bool&gt;&gt; predicate) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="predicate" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Boolean&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Where``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Where``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Where``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the elements from <paramref name="source" /> that satisfy the condition specified by <paramref name="predicate" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Filters a sequence of values based on a predicate.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains elements from the input sequence that satisfy the condition specified by <paramref name="predicate" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> to filter.</param>
        <param name="predicate">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to test each element for a condition.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Where&lt;TSource&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TSource&gt; Where&lt;TSource&gt; (this System.Linq.IQueryable&lt;TSource&gt; source, System.Linq.Expressions.Expression&lt;Func&lt;TSource,int,bool&gt;&gt; predicate);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TSource&gt; Where&lt;TSource&gt;(class System.Linq.IQueryable`1&lt;!!TSource&gt; source, class System.Linq.Expressions.Expression`1&lt;class System.Func`3&lt;!!TSource, int32, bool&gt;&gt; predicate) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>3.5.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TSource&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TSource" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source" Type="System.Linq.IQueryable&lt;TSource&gt;" RefType="this" />
        <Parameter Name="predicate" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TSource,System.Int32,System.Boolean&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>This method has at least one parameter of type <see cref="T:System.Linq.Expressions.Expression`1" /> whose type argument is one of the <see cref="T:System.Func`2" /> types. For these parameters, you can pass in a lambda expression and it will be compiled to an <see cref="T:System.Linq.Expressions.Expression`1" />.</para>
          <para>The <see cref="M:System.Linq.Queryable.Where``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32,System.Boolean}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Where``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32,System.Boolean}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source" /> parameter.</para>
          <para>The query behavior that occurs as a result of executing an expression tree that represents calling <see cref="M:System.Linq.Queryable.Where``1(System.Linq.IQueryable{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Int32,System.Boolean}})" /> depends on the implementation of the type of the <paramref name="source" /> parameter. The expected behavior is that it returns the elements from <paramref name="source" /> that satisfy the condition specified by <paramref name="predicate" />. The index of each source element is provided as the second argument to <paramref name="predicate" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Filters a sequence of values based on a predicate. Each element's index is used in the logic of the predicate function.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains elements from the input sequence that satisfy the condition specified by <paramref name="predicate" />.</para>
        </returns>
        <param name="source">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Linq.IQueryable`1" /> to filter.</param>
        <param name="predicate">
          <attribution license="cc4" from="Microsoft" modified="false" />A function to test each element for a condition; the second parameter of the function represents the index of the element in the source sequence.</param>
        <typeparam name="TSource">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of <paramref name="source" />.</typeparam>
      </Docs>
    </Member>
    <Member MemberName="Zip&lt;TFirst,TSecond,TResult&gt;">
      <MemberSignature Language="C#" Value="public static System.Linq.IQueryable&lt;TResult&gt; Zip&lt;TFirst,TSecond,TResult&gt; (this System.Linq.IQueryable&lt;TFirst&gt; source1, System.Collections.Generic.IEnumerable&lt;TSecond&gt; source2, System.Linq.Expressions.Expression&lt;Func&lt;TFirst,TSecond,TResult&gt;&gt; resultSelector);" />
      <MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Linq.IQueryable`1&lt;!!TResult&gt; Zip&lt;TFirst, TSecond, TResult&gt;(class System.Linq.IQueryable`1&lt;!!TFirst&gt; source1, class System.Collections.Generic.IEnumerable`1&lt;!!TSecond&gt; source2, class System.Linq.Expressions.Expression`1&lt;class System.Func`3&lt;!!TFirst, !!TSecond, !!TResult&gt;&gt; resultSelector) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Linq.IQueryable&lt;TResult&gt;</ReturnType>
      </ReturnValue>
      <TypeParameters>
        <TypeParameter Name="TFirst" />
        <TypeParameter Name="TSecond" />
        <TypeParameter Name="TResult" />
      </TypeParameters>
      <Parameters>
        <Parameter Name="source1" Type="System.Linq.IQueryable&lt;TFirst&gt;" RefType="this" />
        <Parameter Name="source2" Type="System.Collections.Generic.IEnumerable&lt;TSecond&gt;" />
        <Parameter Name="resultSelector" Type="System.Linq.Expressions.Expression&lt;System.Func&lt;TFirst,TSecond,TResult&gt;&gt;" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Linq.Queryable.Zip``3(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``1,``2}})" /> method generates a <see cref="T:System.Linq.Expressions.MethodCallExpression" /> that represents calling <see cref="M:System.Linq.Queryable.Zip``3(System.Linq.IQueryable{``0},System.Collections.Generic.IEnumerable{``1},System.Linq.Expressions.Expression{System.Func{``0,``1,``2}})" /> itself as a constructed generic method. It then passes the <see cref="T:System.Linq.Expressions.MethodCallExpression" /> to the <see cref="M:System.Linq.IQueryProvider.CreateQuery``1(System.Linq.Expressions.Expression)" /> method of the <see cref="T:System.Linq.IQueryProvider" /> represented by the <see cref="P:System.Linq.IQueryable.Provider" /> property of the <paramref name="source1" /> parameter.</para>
          <para>The method merges each element of the first sequence with an element that has the same index in the second sequence. If the sequences do not have the same number of elements, the method merges sequences until it reaches the end of one of them. For example, if one sequence has three elements and the other one has four, the resulting sequence will have only three elements.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Merges two sequences by using the specified predicate function.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An <see cref="T:System.Linq.IQueryable`1" /> that contains merged elements of two input sequences.</para>
        </returns>
        <param name="source1">
          <attribution license="cc4" from="Microsoft" modified="false" />The first sequence to merge.</param>
        <param name="source2">
          <attribution license="cc4" from="Microsoft" modified="false" />The second sequence to merge.</param>
        <param name="resultSelector">
          <attribution license="cc4" from="Microsoft" modified="false" />A function that specifies how to merge the elements from the two sequences.</param>
        <typeparam name="TFirst">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the first input sequence.</typeparam>
        <typeparam name="TSecond">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the second input sequence.</typeparam>
        <typeparam name="TResult">
          <attribution license="cc4" from="Microsoft" modified="false" />The type of the elements of the result sequence.</typeparam>
      </Docs>
    </Member>
  </Members>
</Type>