Queryable.Sum Methode

Definitie

Berekent de som van een reeks numerieke waarden.

Overloads

Name Description
Sum(IQueryable<Single>)

Berekent de som van een reeks Single waarden.

Sum(IQueryable<Nullable<Single>>)

Berekent de som van een reeks null-waarden Single .

Sum(IQueryable<Nullable<Int64>>)

Berekent de som van een reeks null-waarden Int64 .

Sum(IQueryable<Nullable<Int32>>)

Berekent de som van een reeks null-waarden Int32 .

Sum(IQueryable<Nullable<Double>>)

Berekent de som van een reeks null-waarden Double .

Sum(IQueryable<Double>)

Berekent de som van een reeks Double waarden.

Sum(IQueryable<Int64>)

Berekent de som van een reeks Int64 waarden.

Sum(IQueryable<Int32>)

Berekent de som van een reeks Int32 waarden.

Sum(IQueryable<Nullable<Decimal>>)

Berekent de som van een reeks null-waarden Decimal .

Sum(IQueryable<Decimal>)

Berekent de som van een reeks Decimal waarden.

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>)

Berekent de som van de reeks null-waarden Single die worden verkregen door een projectiefunctie aan te roepen op elk element van de invoerreeks.

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>)

Berekent de som van de reeks null-waarden Int64 die worden verkregen door een projectiefunctie aan te roepen op elk element van de invoerreeks.

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>)

Berekent de som van de reeks null-waarden Int32 die worden verkregen door een projectiefunctie aan te roepen op elk element van de invoerreeks.

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>)

Berekent de som van de reeks null-waarden Double die worden verkregen door een projectiefunctie aan te roepen op elk element van de invoerreeks.

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>)

Berekent de som van de reeks Single waarden die worden verkregen door een projectiefunctie aan te roepen op elk element van de invoerreeks.

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>)

Berekent de som van de reeks Int64 waarden die worden verkregen door een projectiefunctie aan te roepen op elk element van de invoerreeks.

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>)

Berekent de som van de reeks Int32 waarden die worden verkregen door een projectiefunctie aan te roepen op elk element van de invoerreeks.

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>)

Berekent de som van de reeks Double waarden die worden verkregen door een projectiefunctie aan te roepen op elk element van de invoerreeks.

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>)

Berekent de som van de reeks Decimal waarden die worden verkregen door een projectiefunctie aan te roepen op elk element van de invoerreeks.

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>)

Berekent de som van de reeks null-waarden Decimal die worden verkregen door een projectiefunctie aan te roepen op elk element van de invoerreeks.

Sum(IQueryable<Single>)

Berekent de som van een reeks Single waarden.

public:
[System::Runtime::CompilerServices::Extension]
 static float Sum(System::Linq::IQueryable<float> ^ source);
public static float Sum(this System.Linq.IQueryable<float> source);
static member Sum : System.Linq.IQueryable<single> -> single
<Extension()>
Public Function Sum (source As IQueryable(Of Single)) As Single

Parameters

source
IQueryable<Single>

Een reeks Single waarden om de som van te berekenen.

Retouren

De som van de waarden in de reeks.

Uitzonderingen

source is null.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe Sum(IQueryable<Single>) u de waarden van een reeks optelt.

List<float> numbers = new List<float> { 43.68F, 1.25F, 583.7F, 6.5F };

float sum = numbers.AsQueryable().Sum();

Console.WriteLine("The sum of the numbers is {0}.", sum);

/*
    This code produces the following output:

    The sum of the numbers is 635.13.
*/
Dim numbers As New List(Of Single)(New Single() {43.68F, 1.25F, 583.7F, 6.5F})

Dim sum As Single = numbers.AsQueryable().Sum()

MsgBox("The sum of the numbers is " & sum)

' This code produces the following output:

' The sum of the numbers is 635.13.

Opmerkingen

De Sum(IQueryable<Single>) methode genereert een MethodCallExpression die zichzelf aanroept Sum(IQueryable<Single>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.

Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Sum(IQueryable<Single>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het de som van de waarden in sourceretourneert.

Van toepassing op

Sum(IQueryable<Nullable<Single>>)

Berekent de som van een reeks null-waarden Single .

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<float> Sum(System::Linq::IQueryable<Nullable<float>> ^ source);
public static float? Sum(this System.Linq.IQueryable<float?> source);
static member Sum : System.Linq.IQueryable<Nullable<single>> -> Nullable<single>
<Extension()>
Public Function Sum (source As IQueryable(Of Nullable(Of Single))) As Nullable(Of Single)

Parameters

source
IQueryable<Nullable<Single>>

Een reeks null-waarden Single om de som van te berekenen.

Retouren

De som van de waarden in de reeks.

Uitzonderingen

source is null.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe Sum(IQueryable<Nullable<Single>>) u de waarden van een reeks optelt.

float?[] points = { null, 0, 92.83F, null, 100.0F, 37.46F, 81.1F };

float? sum = points.AsQueryable().Sum();

Console.WriteLine("Total points earned: {0}", sum);

/*
    This code produces the following output:

    Total points earned: 311.39
*/
Dim points As Nullable(Of Single)() = {Nothing, 0, 92.83F, Nothing, 100.0F, 37.46F, 81.1F}

Dim sum As Nullable(Of Single) = points.AsQueryable().Sum()

MsgBox("Total points earned: " & sum)

'This code produces the following output:

'Total points earned: 311.39

Opmerkingen

De Sum(IQueryable<Nullable<Single>>) methode genereert een MethodCallExpression die zichzelf aanroept Sum(IQueryable<Nullable<Single>>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.

Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Sum(IQueryable<Nullable<Single>>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het de som van de waarden in sourceretourneert.

Van toepassing op

Sum(IQueryable<Nullable<Int64>>)

Berekent de som van een reeks null-waarden Int64 .

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<long> Sum(System::Linq::IQueryable<Nullable<long>> ^ source);
public static long? Sum(this System.Linq.IQueryable<long?> source);
static member Sum : System.Linq.IQueryable<Nullable<int64>> -> Nullable<int64>
<Extension()>
Public Function Sum (source As IQueryable(Of Nullable(Of Long))) As Nullable(Of Long)

Parameters

source
IQueryable<Nullable<Int64>>

Een reeks null-waarden Int64 om de som van te berekenen.

Retouren

De som van de waarden in de reeks.

Uitzonderingen

source is null.

De som is groter dan Int64.MaxValue.

Opmerkingen

De Sum(IQueryable<Nullable<Int64>>) methode genereert een MethodCallExpression die zichzelf aanroept Sum(IQueryable<Nullable<Int64>>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.

Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Sum(IQueryable<Nullable<Int64>>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het de som van de waarden in sourceretourneert.

Van toepassing op

Sum(IQueryable<Nullable<Int32>>)

Berekent de som van een reeks null-waarden Int32 .

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<int> Sum(System::Linq::IQueryable<Nullable<int>> ^ source);
public static int? Sum(this System.Linq.IQueryable<int?> source);
static member Sum : System.Linq.IQueryable<Nullable<int>> -> Nullable<int>
<Extension()>
Public Function Sum (source As IQueryable(Of Nullable(Of Integer))) As Nullable(Of Integer)

Parameters

source
IQueryable<Nullable<Int32>>

Een reeks null-waarden Int32 om de som van te berekenen.

Retouren

De som van de waarden in de reeks.

Uitzonderingen

source is null.

De som is groter dan Int32.MaxValue.

Opmerkingen

De Sum(IQueryable<Nullable<Int32>>) methode genereert een MethodCallExpression die zichzelf aanroept Sum(IQueryable<Nullable<Int32>>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.

Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Sum(IQueryable<Nullable<Int32>>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het de som van de waarden in sourceretourneert.

Van toepassing op

Sum(IQueryable<Nullable<Double>>)

Berekent de som van een reeks null-waarden Double .

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<double> Sum(System::Linq::IQueryable<Nullable<double>> ^ source);
public static double? Sum(this System.Linq.IQueryable<double?> source);
static member Sum : System.Linq.IQueryable<Nullable<double>> -> Nullable<double>
<Extension()>
Public Function Sum (source As IQueryable(Of Nullable(Of Double))) As Nullable(Of Double)

Parameters

source
IQueryable<Nullable<Double>>

Een reeks null-waarden Double om de som van te berekenen.

Retouren

De som van de waarden in de reeks.

Uitzonderingen

source is null.

Opmerkingen

De Sum(IQueryable<Nullable<Double>>) methode genereert een MethodCallExpression die zichzelf aanroept Sum(IQueryable<Nullable<Double>>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.

Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Sum(IQueryable<Nullable<Double>>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het de som van de waarden in sourceretourneert.

Van toepassing op

Sum(IQueryable<Double>)

Berekent de som van een reeks Double waarden.

public:
[System::Runtime::CompilerServices::Extension]
 static double Sum(System::Linq::IQueryable<double> ^ source);
public static double Sum(this System.Linq.IQueryable<double> source);
static member Sum : System.Linq.IQueryable<double> -> double
<Extension()>
Public Function Sum (source As IQueryable(Of Double)) As Double

Parameters

source
IQueryable<Double>

Een reeks Double waarden om de som van te berekenen.

Retouren

De som van de waarden in de reeks.

Uitzonderingen

source is null.

Opmerkingen

De Sum(IQueryable<Double>) methode genereert een MethodCallExpression die zichzelf aanroept Sum(IQueryable<Double>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.

Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Sum(IQueryable<Double>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het de som van de waarden in sourceretourneert.

Van toepassing op

Sum(IQueryable<Int64>)

Berekent de som van een reeks Int64 waarden.

public:
[System::Runtime::CompilerServices::Extension]
 static long Sum(System::Linq::IQueryable<long> ^ source);
public static long Sum(this System.Linq.IQueryable<long> source);
static member Sum : System.Linq.IQueryable<int64> -> int64
<Extension()>
Public Function Sum (source As IQueryable(Of Long)) As Long

Parameters

source
IQueryable<Int64>

Een reeks Int64 waarden om de som van te berekenen.

Retouren

De som van de waarden in de reeks.

Uitzonderingen

source is null.

De som is groter dan Int64.MaxValue.

Opmerkingen

De Sum(IQueryable<Int64>) methode genereert een MethodCallExpression die zichzelf aanroept Sum(IQueryable<Int64>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.

Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Sum(IQueryable<Int64>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het de som van de waarden in sourceretourneert.

Van toepassing op

Sum(IQueryable<Int32>)

Berekent de som van een reeks Int32 waarden.

public:
[System::Runtime::CompilerServices::Extension]
 static int Sum(System::Linq::IQueryable<int> ^ source);
public static int Sum(this System.Linq.IQueryable<int> source);
static member Sum : System.Linq.IQueryable<int> -> int
<Extension()>
Public Function Sum (source As IQueryable(Of Integer)) As Integer

Parameters

source
IQueryable<Int32>

Een reeks Int32 waarden om de som van te berekenen.

Retouren

De som van de waarden in de reeks.

Uitzonderingen

source is null.

De som is groter dan Int32.MaxValue.

Opmerkingen

De Sum(IQueryable<Int32>) methode genereert een MethodCallExpression die zichzelf aanroept Sum(IQueryable<Int32>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.

Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Sum(IQueryable<Int32>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het de som van de waarden in sourceretourneert.

Van toepassing op

Sum(IQueryable<Nullable<Decimal>>)

Berekent de som van een reeks null-waarden Decimal .

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<System::Decimal> Sum(System::Linq::IQueryable<Nullable<System::Decimal>> ^ source);
public static decimal? Sum(this System.Linq.IQueryable<decimal?> source);
static member Sum : System.Linq.IQueryable<Nullable<decimal>> -> Nullable<decimal>
<Extension()>
Public Function Sum (source As IQueryable(Of Nullable(Of Decimal))) As Nullable(Of Decimal)

Parameters

source
IQueryable<Nullable<Decimal>>

Een reeks null-waarden Decimal om de som van te berekenen.

Retouren

De som van de waarden in de reeks.

Uitzonderingen

source is null.

De som is groter dan Decimal.MaxValue.

Opmerkingen

De Sum(IQueryable<Nullable<Decimal>>) methode genereert een MethodCallExpression die zichzelf aanroept Sum(IQueryable<Nullable<Decimal>>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.

Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Sum(IQueryable<Nullable<Decimal>>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het de som van de waarden in sourceretourneert.

Van toepassing op

Sum(IQueryable<Decimal>)

Berekent de som van een reeks Decimal waarden.

public:
[System::Runtime::CompilerServices::Extension]
 static System::Decimal Sum(System::Linq::IQueryable<System::Decimal> ^ source);
public static decimal Sum(this System.Linq.IQueryable<decimal> source);
static member Sum : System.Linq.IQueryable<decimal> -> decimal
<Extension()>
Public Function Sum (source As IQueryable(Of Decimal)) As Decimal

Parameters

source
IQueryable<Decimal>

Een reeks Decimal waarden om de som van te berekenen.

Retouren

De som van de waarden in de reeks.

Uitzonderingen

source is null.

De som is groter dan Decimal.MaxValue.

Opmerkingen

De Sum(IQueryable<Decimal>) methode genereert een MethodCallExpression die zichzelf aanroept Sum(IQueryable<Decimal>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.

Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Sum(IQueryable<Decimal>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het de som van de waarden in sourceretourneert.

Van toepassing op

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>)

Berekent de som van de reeks null-waarden Single die worden verkregen door een projectiefunctie aan te roepen op elk element van de invoerreeks.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static Nullable<float> Sum(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, Nullable<float>> ^> ^ selector);
public static float? Sum<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,float?>> selector);
static member Sum : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, Nullable<single>>> -> Nullable<single>
<Extension()>
Public Function Sum(Of TSource) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, Nullable(Of Single)))) As Nullable(Of Single)

Type parameters

TSource

Het type van de elementen van source.

Parameters

source
IQueryable<TSource>

Een reeks waarden van het type TSource.

selector
Expression<Func<TSource,Nullable<Single>>>

Een projectiefunctie die op elk element moet worden toegepast.

Retouren

De som van de verwachte waarden.

Uitzonderingen

source of selector is null.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) u de verwachte waarden van een reeks kunt optellen.

Note

In dit codevoorbeeld wordt een overbelasting gebruikt van de methode die verschilt van de specifieke overbelasting die in dit artikel wordt beschreven. Als u het voorbeeld wilt uitbreiden naar de overbelasting die in dit artikel wordt beschreven, wijzigt u de hoofdtekst van de selector functie.

class Package
{
    public string Company { get; set; }
    public double Weight { get; set; }
}

public static void SumEx3()
{
    List<Package> packages =
        new List<Package>
            { new Package { Company = "Coho Vineyard", Weight = 25.2 },
              new Package { Company = "Lucerne Publishing", Weight = 18.7 },
              new Package { Company = "Wingtip Toys", Weight = 6.0 },
              new Package { Company = "Adventure Works", Weight = 33.8 } };

    // Calculate the sum of all package weights.
    double totalWeight = packages.AsQueryable().Sum(pkg => pkg.Weight);

    Console.WriteLine("The total weight of the packages is: {0}", totalWeight);
}

/*
    This code produces the following output:

    The total weight of the packages is: 83.7
*/
Structure Package
    Public Company As String
    Public Weight As Double
End Structure

Shared Sub SumEx3()
    Dim packages As New List(Of Package)(New Package() { _
            New Package With {.Company = "Coho Vineyard", .Weight = 25.2}, _
              New Package With {.Company = "Lucerne Publishing", .Weight = 18.7}, _
              New Package With {.Company = "Wingtip Toys", .Weight = 6.0}, _
              New Package With {.Company = "Adventure Works", .Weight = 33.8}})

    ' Calculate the sum of all package weights.
    Dim totalWeight As Double = packages.AsQueryable().Sum(Function(pkg) pkg.Weight)

    MsgBox("The total weight of the packages is: " & totalWeight)
End Sub

'This code produces the following output:

'The total weight of the packages is: 83.7

Opmerkingen

Deze methode heeft ten minste één parameter van het type Expression<TDelegate> waarvan het typeargument een van de Func<T,TResult> typen is. Voor deze parameters kunt u een lambda-expressie doorgeven en deze wordt gecompileerd naar een Expression<TDelegate>.

De Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>) methode genereert een MethodCallExpression die zichzelf aanroept Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.

Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het aanroept selector op elk element van source en de som van de resulterende waarden retourneert.

Van toepassing op

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>)

Berekent de som van de reeks null-waarden Int64 die worden verkregen door een projectiefunctie aan te roepen op elk element van de invoerreeks.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static Nullable<long> Sum(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, Nullable<long>> ^> ^ selector);
public static long? Sum<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,long?>> selector);
static member Sum : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, Nullable<int64>>> -> Nullable<int64>
<Extension()>
Public Function Sum(Of TSource) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, Nullable(Of Long)))) As Nullable(Of Long)

Type parameters

TSource

Het type van de elementen van source.

Parameters

source
IQueryable<TSource>

Een reeks waarden van het type TSource.

selector
Expression<Func<TSource,Nullable<Int64>>>

Een projectiefunctie die op elk element moet worden toegepast.

Retouren

De som van de verwachte waarden.

Uitzonderingen

source of selector is null.

De som is groter dan Int64.MaxValue.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) u de verwachte waarden van een reeks kunt optellen.

Note

In dit codevoorbeeld wordt een overbelasting gebruikt van de methode die verschilt van de specifieke overbelasting die in dit artikel wordt beschreven. Als u het voorbeeld wilt uitbreiden naar de overbelasting die in dit artikel wordt beschreven, wijzigt u de hoofdtekst van de selector functie.

class Package
{
    public string Company { get; set; }
    public double Weight { get; set; }
}

public static void SumEx3()
{
    List<Package> packages =
        new List<Package>
            { new Package { Company = "Coho Vineyard", Weight = 25.2 },
              new Package { Company = "Lucerne Publishing", Weight = 18.7 },
              new Package { Company = "Wingtip Toys", Weight = 6.0 },
              new Package { Company = "Adventure Works", Weight = 33.8 } };

    // Calculate the sum of all package weights.
    double totalWeight = packages.AsQueryable().Sum(pkg => pkg.Weight);

    Console.WriteLine("The total weight of the packages is: {0}", totalWeight);
}

/*
    This code produces the following output:

    The total weight of the packages is: 83.7
*/
Structure Package
    Public Company As String
    Public Weight As Double
End Structure

Shared Sub SumEx3()
    Dim packages As New List(Of Package)(New Package() { _
            New Package With {.Company = "Coho Vineyard", .Weight = 25.2}, _
              New Package With {.Company = "Lucerne Publishing", .Weight = 18.7}, _
              New Package With {.Company = "Wingtip Toys", .Weight = 6.0}, _
              New Package With {.Company = "Adventure Works", .Weight = 33.8}})

    ' Calculate the sum of all package weights.
    Dim totalWeight As Double = packages.AsQueryable().Sum(Function(pkg) pkg.Weight)

    MsgBox("The total weight of the packages is: " & totalWeight)
End Sub

'This code produces the following output:

'The total weight of the packages is: 83.7

Opmerkingen

Deze methode heeft ten minste één parameter van het type Expression<TDelegate> waarvan het typeargument een van de Func<T,TResult> typen is. Voor deze parameters kunt u een lambda-expressie doorgeven en deze wordt gecompileerd naar een Expression<TDelegate>.

De Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>) methode genereert een MethodCallExpression die zichzelf aanroept Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.

Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het aanroept selector op elk element van source en de som van de resulterende waarden retourneert.

Van toepassing op

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>)

Berekent de som van de reeks null-waarden Int32 die worden verkregen door een projectiefunctie aan te roepen op elk element van de invoerreeks.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static Nullable<int> Sum(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, Nullable<int>> ^> ^ selector);
public static int? Sum<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,int?>> selector);
static member Sum : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, Nullable<int>>> -> Nullable<int>
<Extension()>
Public Function Sum(Of TSource) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, Nullable(Of Integer)))) As Nullable(Of Integer)

Type parameters

TSource

Het type van de elementen van source.

Parameters

source
IQueryable<TSource>

Een reeks waarden van het type TSource.

selector
Expression<Func<TSource,Nullable<Int32>>>

Een projectiefunctie die op elk element moet worden toegepast.

Retouren

De som van de verwachte waarden.

Uitzonderingen

source of selector is null.

De som is groter dan Int32.MaxValue.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) u de verwachte waarden van een reeks kunt optellen.

Note

In dit codevoorbeeld wordt een overbelasting gebruikt van de methode die verschilt van de specifieke overbelasting die in dit artikel wordt beschreven. Als u het voorbeeld wilt uitbreiden naar de overbelasting die in dit artikel wordt beschreven, wijzigt u de hoofdtekst van de selector functie.

class Package
{
    public string Company { get; set; }
    public double Weight { get; set; }
}

public static void SumEx3()
{
    List<Package> packages =
        new List<Package>
            { new Package { Company = "Coho Vineyard", Weight = 25.2 },
              new Package { Company = "Lucerne Publishing", Weight = 18.7 },
              new Package { Company = "Wingtip Toys", Weight = 6.0 },
              new Package { Company = "Adventure Works", Weight = 33.8 } };

    // Calculate the sum of all package weights.
    double totalWeight = packages.AsQueryable().Sum(pkg => pkg.Weight);

    Console.WriteLine("The total weight of the packages is: {0}", totalWeight);
}

/*
    This code produces the following output:

    The total weight of the packages is: 83.7
*/
Structure Package
    Public Company As String
    Public Weight As Double
End Structure

Shared Sub SumEx3()
    Dim packages As New List(Of Package)(New Package() { _
            New Package With {.Company = "Coho Vineyard", .Weight = 25.2}, _
              New Package With {.Company = "Lucerne Publishing", .Weight = 18.7}, _
              New Package With {.Company = "Wingtip Toys", .Weight = 6.0}, _
              New Package With {.Company = "Adventure Works", .Weight = 33.8}})

    ' Calculate the sum of all package weights.
    Dim totalWeight As Double = packages.AsQueryable().Sum(Function(pkg) pkg.Weight)

    MsgBox("The total weight of the packages is: " & totalWeight)
End Sub

'This code produces the following output:

'The total weight of the packages is: 83.7

Opmerkingen

Deze methode heeft ten minste één parameter van het type Expression<TDelegate> waarvan het typeargument een van de Func<T,TResult> typen is. Voor deze parameters kunt u een lambda-expressie doorgeven en deze wordt gecompileerd naar een Expression<TDelegate>.

De Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>) methode genereert een MethodCallExpression die zichzelf aanroept Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.

Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het aanroept selector op elk element van source en de som van de resulterende waarden retourneert.

Van toepassing op

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>)

Berekent de som van de reeks null-waarden Double die worden verkregen door een projectiefunctie aan te roepen op elk element van de invoerreeks.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static Nullable<double> Sum(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, Nullable<double>> ^> ^ selector);
public static double? Sum<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,double?>> selector);
static member Sum : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, Nullable<double>>> -> Nullable<double>
<Extension()>
Public Function Sum(Of TSource) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, Nullable(Of Double)))) As Nullable(Of Double)

Type parameters

TSource

Het type van de elementen van source.

Parameters

source
IQueryable<TSource>

Een reeks waarden van het type TSource.

selector
Expression<Func<TSource,Nullable<Double>>>

Een projectiefunctie die op elk element moet worden toegepast.

Retouren

De som van de verwachte waarden.

Uitzonderingen

source of selector is null.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) u de verwachte waarden van een reeks kunt optellen.

Note

In dit codevoorbeeld wordt een overbelasting gebruikt van de methode die verschilt van de specifieke overbelasting die in dit artikel wordt beschreven. Als u het voorbeeld wilt uitbreiden naar de overbelasting die in dit artikel wordt beschreven, wijzigt u de hoofdtekst van de selector functie.

class Package
{
    public string Company { get; set; }
    public double Weight { get; set; }
}

public static void SumEx3()
{
    List<Package> packages =
        new List<Package>
            { new Package { Company = "Coho Vineyard", Weight = 25.2 },
              new Package { Company = "Lucerne Publishing", Weight = 18.7 },
              new Package { Company = "Wingtip Toys", Weight = 6.0 },
              new Package { Company = "Adventure Works", Weight = 33.8 } };

    // Calculate the sum of all package weights.
    double totalWeight = packages.AsQueryable().Sum(pkg => pkg.Weight);

    Console.WriteLine("The total weight of the packages is: {0}", totalWeight);
}

/*
    This code produces the following output:

    The total weight of the packages is: 83.7
*/
Structure Package
    Public Company As String
    Public Weight As Double
End Structure

Shared Sub SumEx3()
    Dim packages As New List(Of Package)(New Package() { _
            New Package With {.Company = "Coho Vineyard", .Weight = 25.2}, _
              New Package With {.Company = "Lucerne Publishing", .Weight = 18.7}, _
              New Package With {.Company = "Wingtip Toys", .Weight = 6.0}, _
              New Package With {.Company = "Adventure Works", .Weight = 33.8}})

    ' Calculate the sum of all package weights.
    Dim totalWeight As Double = packages.AsQueryable().Sum(Function(pkg) pkg.Weight)

    MsgBox("The total weight of the packages is: " & totalWeight)
End Sub

'This code produces the following output:

'The total weight of the packages is: 83.7

Opmerkingen

Deze methode heeft ten minste één parameter van het type Expression<TDelegate> waarvan het typeargument een van de Func<T,TResult> typen is. Voor deze parameters kunt u een lambda-expressie doorgeven en deze wordt gecompileerd naar een Expression<TDelegate>.

De Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>) methode genereert een MethodCallExpression die zichzelf aanroept Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.

Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het aanroept selector op elk element van source en de som van de resulterende waarden retourneert.

Van toepassing op

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>)

Berekent de som van de reeks Single waarden die worden verkregen door een projectiefunctie aan te roepen op elk element van de invoerreeks.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static float Sum(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, float> ^> ^ selector);
public static float Sum<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,float>> selector);
static member Sum : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, single>> -> single
<Extension()>
Public Function Sum(Of TSource) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, Single))) As Single

Type parameters

TSource

Het type van de elementen van source.

Parameters

source
IQueryable<TSource>

Een reeks waarden van het type TSource.

selector
Expression<Func<TSource,Single>>

Een projectiefunctie die op elk element moet worden toegepast.

Retouren

De som van de verwachte waarden.

Uitzonderingen

source of selector is null.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) u de verwachte waarden van een reeks kunt optellen.

Note

In dit codevoorbeeld wordt een overbelasting gebruikt van de methode die verschilt van de specifieke overbelasting die in dit artikel wordt beschreven. Als u het voorbeeld wilt uitbreiden naar de overbelasting die in dit artikel wordt beschreven, wijzigt u de hoofdtekst van de selector functie.

class Package
{
    public string Company { get; set; }
    public double Weight { get; set; }
}

public static void SumEx3()
{
    List<Package> packages =
        new List<Package>
            { new Package { Company = "Coho Vineyard", Weight = 25.2 },
              new Package { Company = "Lucerne Publishing", Weight = 18.7 },
              new Package { Company = "Wingtip Toys", Weight = 6.0 },
              new Package { Company = "Adventure Works", Weight = 33.8 } };

    // Calculate the sum of all package weights.
    double totalWeight = packages.AsQueryable().Sum(pkg => pkg.Weight);

    Console.WriteLine("The total weight of the packages is: {0}", totalWeight);
}

/*
    This code produces the following output:

    The total weight of the packages is: 83.7
*/
Structure Package
    Public Company As String
    Public Weight As Double
End Structure

Shared Sub SumEx3()
    Dim packages As New List(Of Package)(New Package() { _
            New Package With {.Company = "Coho Vineyard", .Weight = 25.2}, _
              New Package With {.Company = "Lucerne Publishing", .Weight = 18.7}, _
              New Package With {.Company = "Wingtip Toys", .Weight = 6.0}, _
              New Package With {.Company = "Adventure Works", .Weight = 33.8}})

    ' Calculate the sum of all package weights.
    Dim totalWeight As Double = packages.AsQueryable().Sum(Function(pkg) pkg.Weight)

    MsgBox("The total weight of the packages is: " & totalWeight)
End Sub

'This code produces the following output:

'The total weight of the packages is: 83.7

Opmerkingen

Deze methode heeft ten minste één parameter van het type Expression<TDelegate> waarvan het typeargument een van de Func<T,TResult> typen is. Voor deze parameters kunt u een lambda-expressie doorgeven en deze wordt gecompileerd naar een Expression<TDelegate>.

De Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>) methode genereert een MethodCallExpression die zichzelf aanroept Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.

Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het aanroept selector op elk element van source en de som van de resulterende waarden retourneert.

Van toepassing op

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>)

Berekent de som van de reeks Int64 waarden die worden verkregen door een projectiefunctie aan te roepen op elk element van de invoerreeks.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static long Sum(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, long> ^> ^ selector);
public static long Sum<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,long>> selector);
static member Sum : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, int64>> -> int64
<Extension()>
Public Function Sum(Of TSource) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, Long))) As Long

Type parameters

TSource

Het type van de elementen van source.

Parameters

source
IQueryable<TSource>

Een reeks waarden van het type TSource.

selector
Expression<Func<TSource,Int64>>

Een projectiefunctie die op elk element moet worden toegepast.

Retouren

De som van de verwachte waarden.

Uitzonderingen

source of selector is null.

De som is groter dan Int64.MaxValue.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) u de verwachte waarden van een reeks kunt optellen.

Note

In dit codevoorbeeld wordt een overbelasting gebruikt van de methode die verschilt van de specifieke overbelasting die in dit artikel wordt beschreven. Als u het voorbeeld wilt uitbreiden naar de overbelasting die in dit artikel wordt beschreven, wijzigt u de hoofdtekst van de selector functie.

class Package
{
    public string Company { get; set; }
    public double Weight { get; set; }
}

public static void SumEx3()
{
    List<Package> packages =
        new List<Package>
            { new Package { Company = "Coho Vineyard", Weight = 25.2 },
              new Package { Company = "Lucerne Publishing", Weight = 18.7 },
              new Package { Company = "Wingtip Toys", Weight = 6.0 },
              new Package { Company = "Adventure Works", Weight = 33.8 } };

    // Calculate the sum of all package weights.
    double totalWeight = packages.AsQueryable().Sum(pkg => pkg.Weight);

    Console.WriteLine("The total weight of the packages is: {0}", totalWeight);
}

/*
    This code produces the following output:

    The total weight of the packages is: 83.7
*/
Structure Package
    Public Company As String
    Public Weight As Double
End Structure

Shared Sub SumEx3()
    Dim packages As New List(Of Package)(New Package() { _
            New Package With {.Company = "Coho Vineyard", .Weight = 25.2}, _
              New Package With {.Company = "Lucerne Publishing", .Weight = 18.7}, _
              New Package With {.Company = "Wingtip Toys", .Weight = 6.0}, _
              New Package With {.Company = "Adventure Works", .Weight = 33.8}})

    ' Calculate the sum of all package weights.
    Dim totalWeight As Double = packages.AsQueryable().Sum(Function(pkg) pkg.Weight)

    MsgBox("The total weight of the packages is: " & totalWeight)
End Sub

'This code produces the following output:

'The total weight of the packages is: 83.7

Opmerkingen

Deze methode heeft ten minste één parameter van het type Expression<TDelegate> waarvan het typeargument een van de Func<T,TResult> typen is. Voor deze parameters kunt u een lambda-expressie doorgeven en deze wordt gecompileerd naar een Expression<TDelegate>.

De Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>) methode genereert een MethodCallExpression die zichzelf aanroept Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.

Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het aanroept selector op elk element van source en de som van de resulterende waarden retourneert.

Van toepassing op

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>)

Berekent de som van de reeks Int32 waarden die worden verkregen door een projectiefunctie aan te roepen op elk element van de invoerreeks.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static int Sum(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, int> ^> ^ selector);
public static int Sum<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,int>> selector);
static member Sum : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, int>> -> int
<Extension()>
Public Function Sum(Of TSource) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, Integer))) As Integer

Type parameters

TSource

Het type van de elementen van source.

Parameters

source
IQueryable<TSource>

Een reeks waarden van het type TSource.

selector
Expression<Func<TSource,Int32>>

Een projectiefunctie die op elk element moet worden toegepast.

Retouren

De som van de verwachte waarden.

Uitzonderingen

source of selector is null.

De som is groter dan Int32.MaxValue.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) u de verwachte waarden van een reeks kunt optellen.

Note

In dit codevoorbeeld wordt een overbelasting gebruikt van de methode die verschilt van de specifieke overbelasting die in dit artikel wordt beschreven. Als u het voorbeeld wilt uitbreiden naar de overbelasting die in dit artikel wordt beschreven, wijzigt u de hoofdtekst van de selector functie.

class Package
{
    public string Company { get; set; }
    public double Weight { get; set; }
}

public static void SumEx3()
{
    List<Package> packages =
        new List<Package>
            { new Package { Company = "Coho Vineyard", Weight = 25.2 },
              new Package { Company = "Lucerne Publishing", Weight = 18.7 },
              new Package { Company = "Wingtip Toys", Weight = 6.0 },
              new Package { Company = "Adventure Works", Weight = 33.8 } };

    // Calculate the sum of all package weights.
    double totalWeight = packages.AsQueryable().Sum(pkg => pkg.Weight);

    Console.WriteLine("The total weight of the packages is: {0}", totalWeight);
}

/*
    This code produces the following output:

    The total weight of the packages is: 83.7
*/
Structure Package
    Public Company As String
    Public Weight As Double
End Structure

Shared Sub SumEx3()
    Dim packages As New List(Of Package)(New Package() { _
            New Package With {.Company = "Coho Vineyard", .Weight = 25.2}, _
              New Package With {.Company = "Lucerne Publishing", .Weight = 18.7}, _
              New Package With {.Company = "Wingtip Toys", .Weight = 6.0}, _
              New Package With {.Company = "Adventure Works", .Weight = 33.8}})

    ' Calculate the sum of all package weights.
    Dim totalWeight As Double = packages.AsQueryable().Sum(Function(pkg) pkg.Weight)

    MsgBox("The total weight of the packages is: " & totalWeight)
End Sub

'This code produces the following output:

'The total weight of the packages is: 83.7

Opmerkingen

Deze methode heeft ten minste één parameter van het type Expression<TDelegate> waarvan het typeargument een van de Func<T,TResult> typen is. Voor deze parameters kunt u een lambda-expressie doorgeven en deze wordt gecompileerd naar een Expression<TDelegate>.

De Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) methode genereert een MethodCallExpression die zichzelf aanroept Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.

Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het aanroept selector op elk element van source en de som van de resulterende waarden retourneert.

Van toepassing op

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>)

Berekent de som van de reeks Double waarden die worden verkregen door een projectiefunctie aan te roepen op elk element van de invoerreeks.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static double Sum(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, double> ^> ^ selector);
public static double Sum<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,double>> selector);
static member Sum : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, double>> -> double
<Extension()>
Public Function Sum(Of TSource) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, Double))) As Double

Type parameters

TSource

Het type van de elementen van source.

Parameters

source
IQueryable<TSource>

Een reeks waarden van het type TSource.

selector
Expression<Func<TSource,Double>>

Een projectiefunctie die op elk element moet worden toegepast.

Retouren

De som van de verwachte waarden.

Uitzonderingen

source of selector is null.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) u de verwachte waarden van een reeks kunt optellen.

Note

In dit codevoorbeeld wordt een overbelasting gebruikt van de methode die verschilt van de specifieke overbelasting die in dit artikel wordt beschreven. Als u het voorbeeld wilt uitbreiden naar de overbelasting die in dit artikel wordt beschreven, wijzigt u de hoofdtekst van de selector functie.

class Package
{
    public string Company { get; set; }
    public double Weight { get; set; }
}

public static void SumEx3()
{
    List<Package> packages =
        new List<Package>
            { new Package { Company = "Coho Vineyard", Weight = 25.2 },
              new Package { Company = "Lucerne Publishing", Weight = 18.7 },
              new Package { Company = "Wingtip Toys", Weight = 6.0 },
              new Package { Company = "Adventure Works", Weight = 33.8 } };

    // Calculate the sum of all package weights.
    double totalWeight = packages.AsQueryable().Sum(pkg => pkg.Weight);

    Console.WriteLine("The total weight of the packages is: {0}", totalWeight);
}

/*
    This code produces the following output:

    The total weight of the packages is: 83.7
*/
Structure Package
    Public Company As String
    Public Weight As Double
End Structure

Shared Sub SumEx3()
    Dim packages As New List(Of Package)(New Package() { _
            New Package With {.Company = "Coho Vineyard", .Weight = 25.2}, _
              New Package With {.Company = "Lucerne Publishing", .Weight = 18.7}, _
              New Package With {.Company = "Wingtip Toys", .Weight = 6.0}, _
              New Package With {.Company = "Adventure Works", .Weight = 33.8}})

    ' Calculate the sum of all package weights.
    Dim totalWeight As Double = packages.AsQueryable().Sum(Function(pkg) pkg.Weight)

    MsgBox("The total weight of the packages is: " & totalWeight)
End Sub

'This code produces the following output:

'The total weight of the packages is: 83.7

Opmerkingen

Deze methode heeft ten minste één parameter van het type Expression<TDelegate> waarvan het typeargument een van de Func<T,TResult> typen is. Voor deze parameters kunt u een lambda-expressie doorgeven en deze wordt gecompileerd naar een Expression<TDelegate>.

De Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) methode genereert een MethodCallExpression die zichzelf aanroept Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.

Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het aanroept selector op elk element van source en de som van de resulterende waarden retourneert.

Van toepassing op

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>)

Berekent de som van de reeks Decimal waarden die worden verkregen door een projectiefunctie aan te roepen op elk element van de invoerreeks.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static System::Decimal Sum(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, System::Decimal> ^> ^ selector);
public static decimal Sum<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,decimal>> selector);
static member Sum : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, decimal>> -> decimal
<Extension()>
Public Function Sum(Of TSource) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, Decimal))) As Decimal

Type parameters

TSource

Het type van de elementen van source.

Parameters

source
IQueryable<TSource>

Een reeks waarden van het type TSource.

selector
Expression<Func<TSource,Decimal>>

Een projectiefunctie die op elk element moet worden toegepast.

Retouren

De som van de verwachte waarden.

Uitzonderingen

source of selector is null.

De som is groter dan Decimal.MaxValue.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) u de verwachte waarden van een reeks kunt optellen.

Note

In dit codevoorbeeld wordt een overbelasting gebruikt van de methode die verschilt van de specifieke overbelasting die in dit artikel wordt beschreven. Als u het voorbeeld wilt uitbreiden naar de overbelasting die in dit artikel wordt beschreven, wijzigt u de hoofdtekst van de selector functie.

class Package
{
    public string Company { get; set; }
    public double Weight { get; set; }
}

public static void SumEx3()
{
    List<Package> packages =
        new List<Package>
            { new Package { Company = "Coho Vineyard", Weight = 25.2 },
              new Package { Company = "Lucerne Publishing", Weight = 18.7 },
              new Package { Company = "Wingtip Toys", Weight = 6.0 },
              new Package { Company = "Adventure Works", Weight = 33.8 } };

    // Calculate the sum of all package weights.
    double totalWeight = packages.AsQueryable().Sum(pkg => pkg.Weight);

    Console.WriteLine("The total weight of the packages is: {0}", totalWeight);
}

/*
    This code produces the following output:

    The total weight of the packages is: 83.7
*/
Structure Package
    Public Company As String
    Public Weight As Double
End Structure

Shared Sub SumEx3()
    Dim packages As New List(Of Package)(New Package() { _
            New Package With {.Company = "Coho Vineyard", .Weight = 25.2}, _
              New Package With {.Company = "Lucerne Publishing", .Weight = 18.7}, _
              New Package With {.Company = "Wingtip Toys", .Weight = 6.0}, _
              New Package With {.Company = "Adventure Works", .Weight = 33.8}})

    ' Calculate the sum of all package weights.
    Dim totalWeight As Double = packages.AsQueryable().Sum(Function(pkg) pkg.Weight)

    MsgBox("The total weight of the packages is: " & totalWeight)
End Sub

'This code produces the following output:

'The total weight of the packages is: 83.7

Opmerkingen

Deze methode heeft ten minste één parameter van het type Expression<TDelegate> waarvan het typeargument een van de Func<T,TResult> typen is. Voor deze parameters kunt u een lambda-expressie doorgeven en deze wordt gecompileerd naar een Expression<TDelegate>.

De Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>) methode genereert een MethodCallExpression die zichzelf aanroept Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.

Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het aanroept selector op elk element van source en de som van de resulterende waarden retourneert.

Van toepassing op

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>)

Berekent de som van de reeks null-waarden Decimal die worden verkregen door een projectiefunctie aan te roepen op elk element van de invoerreeks.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static Nullable<System::Decimal> Sum(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, Nullable<System::Decimal>> ^> ^ selector);
public static decimal? Sum<TSource>(this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,decimal?>> selector);
static member Sum : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, Nullable<decimal>>> -> Nullable<decimal>
<Extension()>
Public Function Sum(Of TSource) (source As IQueryable(Of TSource), selector As Expression(Of Func(Of TSource, Nullable(Of Decimal)))) As Nullable(Of Decimal)

Type parameters

TSource

Het type van de elementen van source.

Parameters

source
IQueryable<TSource>

Een reeks waarden van het type TSource.

selector
Expression<Func<TSource,Nullable<Decimal>>>

Een projectiefunctie die op elk element moet worden toegepast.

Retouren

De som van de verwachte waarden.

Uitzonderingen

source of selector is null.

De som is groter dan Decimal.MaxValue.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) u de verwachte waarden van een reeks kunt optellen.

Note

In dit codevoorbeeld wordt een overbelasting gebruikt van de methode die verschilt van de specifieke overbelasting die in dit artikel wordt beschreven. Als u het voorbeeld wilt uitbreiden naar de overbelasting die in dit artikel wordt beschreven, wijzigt u de hoofdtekst van de selector functie.

class Package
{
    public string Company { get; set; }
    public double Weight { get; set; }
}

public static void SumEx3()
{
    List<Package> packages =
        new List<Package>
            { new Package { Company = "Coho Vineyard", Weight = 25.2 },
              new Package { Company = "Lucerne Publishing", Weight = 18.7 },
              new Package { Company = "Wingtip Toys", Weight = 6.0 },
              new Package { Company = "Adventure Works", Weight = 33.8 } };

    // Calculate the sum of all package weights.
    double totalWeight = packages.AsQueryable().Sum(pkg => pkg.Weight);

    Console.WriteLine("The total weight of the packages is: {0}", totalWeight);
}

/*
    This code produces the following output:

    The total weight of the packages is: 83.7
*/
Structure Package
    Public Company As String
    Public Weight As Double
End Structure

Shared Sub SumEx3()
    Dim packages As New List(Of Package)(New Package() { _
            New Package With {.Company = "Coho Vineyard", .Weight = 25.2}, _
              New Package With {.Company = "Lucerne Publishing", .Weight = 18.7}, _
              New Package With {.Company = "Wingtip Toys", .Weight = 6.0}, _
              New Package With {.Company = "Adventure Works", .Weight = 33.8}})

    ' Calculate the sum of all package weights.
    Dim totalWeight As Double = packages.AsQueryable().Sum(Function(pkg) pkg.Weight)

    MsgBox("The total weight of the packages is: " & totalWeight)
End Sub

'This code produces the following output:

'The total weight of the packages is: 83.7

Opmerkingen

Deze methode heeft ten minste één parameter van het type Expression<TDelegate> waarvan het typeargument een van de Func<T,TResult> typen is. Voor deze parameters kunt u een lambda-expressie doorgeven en deze wordt gecompileerd naar een Expression<TDelegate>.

De Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>) methode genereert een MethodCallExpression die zichzelf aanroept Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>) als een samengestelde algemene methode. Vervolgens wordt de MethodCallExpression methode doorgegeven aan de Execute<TResult>(Expression) methode van de IQueryProvider vertegenwoordigd door de Provider eigenschap van de source parameter.

Het querygedrag dat optreedt als gevolg van het uitvoeren van een expressiestructuur die aanroept Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>) , is afhankelijk van de implementatie van het type source parameter. Het verwachte gedrag is dat het aanroept selector op elk element van source en de som van de resulterende waarden retourneert.

Van toepassing op