Queryable.Sum Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Berechnet die Summe einer Sequenz von numerischen Werten.
Überlädt
Sum(IQueryable<Decimal>) |
Berechnet die Summe einer Sequenz von Decimal-Werten |
Sum(IQueryable<Double>) |
Berechnet die Summe einer Sequenz von Double-Werten |
Sum(IQueryable<Int32>) |
Berechnet die Summe einer Sequenz von Int32-Werten |
Sum(IQueryable<Int64>) |
Berechnet die Summe einer Sequenz von Int64-Werten |
Sum(IQueryable<Nullable<Decimal>>) |
Berechnet die Summe einer Sequenz von Decimal-Werten, die NULL zulassen |
Sum(IQueryable<Nullable<Double>>) |
Berechnet die Summe einer Sequenz von Double-Werten, die NULL zulassen |
Sum(IQueryable<Nullable<Int32>>) |
Berechnet die Summe einer Sequenz von Int32-Werten, die NULL zulassen |
Sum(IQueryable<Nullable<Int64>>) |
Berechnet die Summe einer Sequenz von Int64-Werten, die NULL zulassen |
Sum(IQueryable<Nullable<Single>>) |
Berechnet die Summe einer Sequenz von Single-Werten, die NULL zulassen |
Sum(IQueryable<Single>) |
Berechnet die Summe einer Sequenz von Single-Werten |
Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>) |
Berechnet die Summe einer Sequenz von Single-Werten, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird. |
Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>) |
Berechnet die Summe einer Sequenz von Single-Werten, die NULL zulassen, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird. |
Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>) |
Berechnet die Summe einer Sequenz von Int64-Werten, die NULL zulassen, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird. |
Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>) |
Berechnet die Summe einer Sequenz von Double-Werten, die NULL zulassen, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird. |
Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>) |
Berechnet die Summe einer Sequenz von Int32-Werten, die NULL zulassen, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird. |
Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>) |
Berechnet die Summe einer Sequenz von Int64-Werten, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird. |
Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>) |
Berechnet die Summe einer Sequenz von Decimal-Werten, die NULL zulassen, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird. |
Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) |
Berechnet die Summe einer Sequenz von Int32-Werten, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird. |
Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) |
Berechnet die Summe einer Sequenz von Double-Werten, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird. |
Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>) |
Berechnet die Summe einer Sequenz von Decimal-Werten, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird. |
Sum(IQueryable<Decimal>)
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
Berechnet die Summe einer Sequenz von Decimal-Werten
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
Parameter
- source
- IQueryable<Decimal>
Eine Sequenz von Decimal-Werten, deren Summe berechnet werden soll
Gibt zurück
Die Summe der Werte in der Sequenz
Ausnahmen
source
ist null
Die Summe ist größer als Decimal.MaxValue.
Hinweise
Die Sum(IQueryable<Decimal>) -Methode generiert eine MethodCallExpression , die den Aufruf Sum(IQueryable<Decimal>) selbst als konstruierte generische Methode darstellt. Anschließend wird an MethodCallExpression die Execute<TResult>(Expression) -Methode des übergeben, das IQueryProvider durch die Provider -Eigenschaft des source
-Parameters dargestellt wird.
Das Abfrageverhalten, das als Ergebnis der Ausführung einer Ausdrucksstruktur auftritt, die den Aufruf Sum(IQueryable<Decimal>) darstellt, hängt von der Implementierung des Typs des source
Parameters ab. Das erwartete Verhalten besteht darin, dass die Summe der Werte in source
zurückgegeben wird.
Gilt für:
Sum(IQueryable<Double>)
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
Berechnet die Summe einer Sequenz von Double-Werten
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
Parameter
- source
- IQueryable<Double>
Eine Sequenz von Double-Werten, deren Summe berechnet werden soll
Gibt zurück
Die Summe der Werte in der Sequenz
Ausnahmen
source
ist null
.
Hinweise
Die Sum(IQueryable<Double>) -Methode generiert eine MethodCallExpression , die den Aufruf Sum(IQueryable<Double>) selbst als konstruierte generische Methode darstellt. Anschließend wird an MethodCallExpression die Execute<TResult>(Expression) -Methode des übergeben, das IQueryProvider durch die Provider -Eigenschaft des source
-Parameters dargestellt wird.
Das Abfrageverhalten, das als Ergebnis der Ausführung einer Ausdrucksstruktur auftritt, die den Aufruf Sum(IQueryable<Double>) darstellt, hängt von der Implementierung des Typs des source
Parameters ab. Das erwartete Verhalten besteht darin, dass die Summe der Werte in source
zurückgegeben wird.
Gilt für:
Sum(IQueryable<Int32>)
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
Berechnet die Summe einer Sequenz von Int32-Werten
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
Parameter
- source
- IQueryable<Int32>
Eine Sequenz von Int32-Werten, deren Summe berechnet werden soll
Gibt zurück
Die Summe der Werte in der Sequenz
Ausnahmen
source
ist null
Die Summe ist größer als Int32.MaxValue.
Hinweise
Die Sum(IQueryable<Int32>) -Methode generiert eine MethodCallExpression , die den Aufruf Sum(IQueryable<Int32>) selbst als konstruierte generische Methode darstellt. Anschließend wird an MethodCallExpression die Execute<TResult>(Expression) -Methode des übergeben, das IQueryProvider durch die Provider -Eigenschaft des source
-Parameters dargestellt wird.
Das Abfrageverhalten, das als Ergebnis der Ausführung einer Ausdrucksstruktur auftritt, die den Aufruf Sum(IQueryable<Int32>) darstellt, hängt von der Implementierung des Typs des source
Parameters ab. Das erwartete Verhalten besteht darin, dass die Summe der Werte in source
zurückgegeben wird.
Gilt für:
Sum(IQueryable<Int64>)
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
Berechnet die Summe einer Sequenz von Int64-Werten
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
Parameter
- source
- IQueryable<Int64>
Eine Sequenz von Int64-Werten, deren Summe berechnet werden soll
Gibt zurück
Die Summe der Werte in der Sequenz
Ausnahmen
source
ist null
Die Summe ist größer als Int64.MaxValue.
Hinweise
Die Sum(IQueryable<Int64>) -Methode generiert eine MethodCallExpression , die den Aufruf Sum(IQueryable<Int64>) selbst als konstruierte generische Methode darstellt. Anschließend wird an MethodCallExpression die Execute<TResult>(Expression) -Methode des übergeben, das IQueryProvider durch die Provider -Eigenschaft des source
-Parameters dargestellt wird.
Das Abfrageverhalten, das als Ergebnis der Ausführung einer Ausdrucksstruktur auftritt, die den Aufruf Sum(IQueryable<Int64>) darstellt, hängt von der Implementierung des Typs des source
Parameters ab. Das erwartete Verhalten besteht darin, dass die Summe der Werte in source
zurückgegeben wird.
Gilt für:
Sum(IQueryable<Nullable<Decimal>>)
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
Berechnet die Summe einer Sequenz von Decimal-Werten, die NULL zulassen
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)
Parameter
- source
- IQueryable<Nullable<Decimal>>
Eine Sequenz von Decimal-Werten, die NULL zulassen, und deren Summe berechnet werden soll
Gibt zurück
Die Summe der Werte in der Sequenz
Ausnahmen
source
ist null
Die Summe ist größer als Decimal.MaxValue.
Hinweise
Die Sum(IQueryable<Nullable<Decimal>>) -Methode generiert eine MethodCallExpression , die den Aufruf Sum(IQueryable<Nullable<Decimal>>) selbst als konstruierte generische Methode darstellt. Anschließend wird an MethodCallExpression die Execute<TResult>(Expression) -Methode des übergeben, das IQueryProvider durch die Provider -Eigenschaft des source
-Parameters dargestellt wird.
Das Abfrageverhalten, das als Ergebnis der Ausführung einer Ausdrucksstruktur auftritt, die den Aufruf Sum(IQueryable<Nullable<Decimal>>) darstellt, hängt von der Implementierung des Typs des source
Parameters ab. Das erwartete Verhalten besteht darin, dass die Summe der Werte in source
zurückgegeben wird.
Gilt für:
Sum(IQueryable<Nullable<Double>>)
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
Berechnet die Summe einer Sequenz von Double-Werten, die NULL zulassen
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)
Parameter
- source
- IQueryable<Nullable<Double>>
Eine Sequenz von Double-Werten, die NULL zulassen, und deren Summe berechnet werden soll
Gibt zurück
Die Summe der Werte in der Sequenz
Ausnahmen
source
ist null
.
Hinweise
Die Sum(IQueryable<Nullable<Double>>) -Methode generiert eine MethodCallExpression , die den Aufruf Sum(IQueryable<Nullable<Double>>) selbst als konstruierte generische Methode darstellt. Anschließend wird an MethodCallExpression die Execute<TResult>(Expression) -Methode des übergeben, das IQueryProvider durch die Provider -Eigenschaft des source
-Parameters dargestellt wird.
Das Abfrageverhalten, das als Ergebnis der Ausführung einer Ausdrucksstruktur auftritt, die den Aufruf Sum(IQueryable<Nullable<Double>>) darstellt, hängt von der Implementierung des Typs des source
Parameters ab. Das erwartete Verhalten besteht darin, dass die Summe der Werte in source
zurückgegeben wird.
Gilt für:
Sum(IQueryable<Nullable<Int32>>)
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
Berechnet die Summe einer Sequenz von Int32-Werten, die NULL zulassen
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)
Parameter
- source
- IQueryable<Nullable<Int32>>
Eine Sequenz von Int32-Werten, die NULL zulassen, und deren Summe berechnet werden soll
Gibt zurück
Die Summe der Werte in der Sequenz
Ausnahmen
source
ist null
Die Summe ist größer als Int32.MaxValue.
Hinweise
Die Sum(IQueryable<Nullable<Int32>>) -Methode generiert eine MethodCallExpression , die den Aufruf Sum(IQueryable<Nullable<Int32>>) selbst als konstruierte generische Methode darstellt. Anschließend wird an MethodCallExpression die Execute<TResult>(Expression) -Methode des übergeben, das IQueryProvider durch die Provider -Eigenschaft des source
-Parameters dargestellt wird.
Das Abfrageverhalten, das beim Ausführen einer Ausdrucksstruktur auftritt, die den Aufruf Sum(IQueryable<Nullable<Int32>>) darstellt, hängt von der Implementierung des Typs des source
Parameters ab. Das erwartete Verhalten besteht darin, dass die Summe der Werte in source
zurückgegeben wird.
Gilt für:
Sum(IQueryable<Nullable<Int64>>)
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
Berechnet die Summe einer Sequenz von Int64-Werten, die NULL zulassen
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)
Parameter
- source
- IQueryable<Nullable<Int64>>
Eine Sequenz von Int64-Werten, die NULL zulassen, und deren Summe berechnet werden soll
Gibt zurück
Die Summe der Werte in der Sequenz
Ausnahmen
source
ist null
Die Summe ist größer als Int64.MaxValue.
Hinweise
Die Sum(IQueryable<Nullable<Int64>>) -Methode generiert eine MethodCallExpression , die den Aufruf Sum(IQueryable<Nullable<Int64>>) selbst als konstruierte generische Methode darstellt. Anschließend übergibt es die MethodCallExpression an die Execute<TResult>(Expression) -Methode von, die IQueryProvider durch die Provider -Eigenschaft des source
Parameters dargestellt wird.
Das Abfrageverhalten, das beim Ausführen einer Ausdrucksstruktur auftritt, die den Aufruf Sum(IQueryable<Nullable<Int64>>) darstellt, hängt von der Implementierung des Typs des source
Parameters ab. Das erwartete Verhalten besteht darin, dass die Summe der Werte in source
zurückgegeben wird.
Gilt für:
Sum(IQueryable<Nullable<Single>>)
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
Berechnet die Summe einer Sequenz von Single-Werten, die NULL zulassen
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)
Parameter
- source
- IQueryable<Nullable<Single>>
Eine Sequenz von Single-Werten, die NULL zulassen, und deren Summe berechnet werden soll
Gibt zurück
Die Summe der Werte in der Sequenz
Ausnahmen
source
ist null
.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie Sum(IQueryable<Nullable<Single>>) die Werte einer Sequenz mit summiert werden.
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
Hinweise
Die Sum(IQueryable<Nullable<Single>>) -Methode generiert eine MethodCallExpression , die den Aufruf Sum(IQueryable<Nullable<Single>>) selbst als konstruierte generische Methode darstellt. Anschließend übergibt es die MethodCallExpression an die Execute<TResult>(Expression) -Methode von, die IQueryProvider durch die Provider -Eigenschaft des source
Parameters dargestellt wird.
Das Abfrageverhalten, das beim Ausführen einer Ausdrucksstruktur auftritt, die den Aufruf Sum(IQueryable<Nullable<Single>>) darstellt, hängt von der Implementierung des Typs des source
Parameters ab. Das erwartete Verhalten besteht darin, dass die Summe der Werte in source
zurückgegeben wird.
Gilt für:
Sum(IQueryable<Single>)
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
Berechnet die Summe einer Sequenz von Single-Werten
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
Parameter
- source
- IQueryable<Single>
Eine Sequenz von Single-Werten, deren Summe berechnet werden soll
Gibt zurück
Die Summe der Werte in der Sequenz
Ausnahmen
source
ist null
.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie Sum(IQueryable<Single>) die Werte einer Sequenz mit summiert werden.
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.
Hinweise
Die Sum(IQueryable<Single>) -Methode generiert eine MethodCallExpression , die den Aufruf Sum(IQueryable<Single>) selbst als konstruierte generische Methode darstellt. Anschließend übergibt es die MethodCallExpression an die Execute<TResult>(Expression) -Methode von, die IQueryProvider durch die Provider -Eigenschaft des source
Parameters dargestellt wird.
Das Abfrageverhalten, das beim Ausführen einer Ausdrucksstruktur auftritt, die den Aufruf Sum(IQueryable<Single>) darstellt, hängt von der Implementierung des Typs des source
Parameters ab. Das erwartete Verhalten besteht darin, dass die Summe der Werte in source
zurückgegeben wird.
Gilt für:
Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>)
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
Berechnet die Summe einer Sequenz von Single-Werten, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird.
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
Typparameter
- TSource
Der Typ der Elemente von source
.
Parameter
- source
- IQueryable<TSource>
Eine Sequenz von Werten des Typs TSource
.
- selector
- Expression<Func<TSource,Single>>
Eine Projektionsfunktion, die auf jedes Element angewendet werden soll.
Gibt zurück
Die Summe der projizierten Werte
Ausnahmen
source
oder selector
ist null
.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) die projizierten Werte einer Sequenz mit summiert werden.
Hinweis
In diesem Codebeispiel wird eine Überladung der Methode verwendet, die sich von der spezifischen Überladung unterscheidet, die in diesem Artikel beschrieben wird. Um das Beispiel auf die In diesem Artikel beschriebene Überladung zu erweitern, ändern Sie den Textkörper der selector
Funktion.
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
Hinweise
Diese Methode verfügt über mindestens einen Parameter vom Typ Expression<TDelegate> , dessen Typargument einer der Func<T,TResult> Typen ist. Für diese Parameter können Sie einen Lambdaausdruck übergeben, der zu einem Expression<TDelegate>kompiliert wird.
Die Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>) -Methode generiert eine MethodCallExpression , die den Aufruf Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>) selbst als konstruierte generische Methode darstellt. Anschließend übergibt es die MethodCallExpression an die Execute<TResult>(Expression) -Methode von, die IQueryProvider durch die Provider -Eigenschaft des source
Parameters dargestellt wird.
Das Abfrageverhalten, das beim Ausführen einer Ausdrucksstruktur auftritt, die den Aufruf Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>) darstellt, hängt von der Implementierung des Typs des source
Parameters ab. Das erwartete Verhalten besteht darin, dass es für jedes Element von source
aufruft selector
und die Summe der resultierenden Werte zurückgibt.
Gilt für:
Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>)
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
Berechnet die Summe einer Sequenz von Single-Werten, die NULL zulassen, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird.
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)
Typparameter
- TSource
Der Typ der Elemente von source
.
Parameter
- source
- IQueryable<TSource>
Eine Sequenz von Werten des Typs TSource
.
- selector
- Expression<Func<TSource,Nullable<Single>>>
Eine Projektionsfunktion, die auf jedes Element angewendet werden soll.
Gibt zurück
Die Summe der projizierten Werte
Ausnahmen
source
oder selector
ist null
.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) die projizierten Werte einer Sequenz mit summiert werden.
Hinweis
In diesem Codebeispiel wird eine Überladung der Methode verwendet, die sich von der spezifischen Überladung unterscheidet, die in diesem Artikel beschrieben wird. Um das Beispiel auf die In diesem Artikel beschriebene Überladung zu erweitern, ändern Sie den Textkörper der selector
Funktion.
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
Hinweise
Diese Methode verfügt über mindestens einen Parameter vom Typ Expression<TDelegate> , dessen Typargument einer der Func<T,TResult> Typen ist. Für diese Parameter können Sie einen Lambdaausdruck übergeben, der zu einem Expression<TDelegate>kompiliert wird.
Die Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>) -Methode generiert eine MethodCallExpression , die den Aufruf Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>) selbst als konstruierte generische Methode darstellt. Anschließend übergibt es die MethodCallExpression an die Execute<TResult>(Expression) -Methode von, die IQueryProvider durch die Provider -Eigenschaft des source
Parameters dargestellt wird.
Das Abfrageverhalten, das beim Ausführen einer Ausdrucksstruktur auftritt, die den Aufruf Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>) darstellt, hängt von der Implementierung des Typs des source
Parameters ab. Das erwartete Verhalten besteht darin, dass es für jedes Element von source
aufruft selector
und die Summe der resultierenden Werte zurückgibt.
Gilt für:
Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>)
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
Berechnet die Summe einer Sequenz von Int64-Werten, die NULL zulassen, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird.
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)
Typparameter
- TSource
Der Typ der Elemente von source
.
Parameter
- source
- IQueryable<TSource>
Eine Sequenz von Werten des Typs TSource
.
- selector
- Expression<Func<TSource,Nullable<Int64>>>
Eine Projektionsfunktion, die auf jedes Element angewendet werden soll.
Gibt zurück
Die Summe der projizierten Werte
Ausnahmen
source
oder selector
ist null
.
Die Summe ist größer als Int64.MaxValue.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) die projizierten Werte einer Sequenz mit summiert werden.
Hinweis
In diesem Codebeispiel wird eine Überladung der Methode verwendet, die sich von der spezifischen Überladung unterscheidet, die in diesem Artikel beschrieben wird. Um das Beispiel auf die In diesem Artikel beschriebene Überladung zu erweitern, ändern Sie den Textkörper der selector
Funktion.
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
Hinweise
Diese Methode verfügt über mindestens einen Parameter vom Typ Expression<TDelegate> , dessen Typargument einer der Func<T,TResult> Typen ist. Für diese Parameter können Sie einen Lambdaausdruck übergeben, der zu einem Expression<TDelegate>kompiliert wird.
Die Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>) -Methode generiert eine MethodCallExpression , die den Aufruf Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>) selbst als konstruierte generische Methode darstellt. Anschließend übergibt es die MethodCallExpression an die Execute<TResult>(Expression) -Methode von, die IQueryProvider durch die Provider -Eigenschaft des source
Parameters dargestellt wird.
Das Abfrageverhalten, das beim Ausführen einer Ausdrucksstruktur auftritt, die den Aufruf Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>) darstellt, hängt von der Implementierung des Typs des source
Parameters ab. Das erwartete Verhalten besteht darin, dass es für jedes Element von source
aufruft selector
und die Summe der resultierenden Werte zurückgibt.
Gilt für:
Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>)
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
Berechnet die Summe einer Sequenz von Double-Werten, die NULL zulassen, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird.
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)
Typparameter
- TSource
Der Typ der Elemente von source
.
Parameter
- source
- IQueryable<TSource>
Eine Sequenz von Werten des Typs TSource
.
- selector
- Expression<Func<TSource,Nullable<Double>>>
Eine Projektionsfunktion, die auf jedes Element angewendet werden soll.
Gibt zurück
Die Summe der projizierten Werte
Ausnahmen
source
oder selector
ist null
.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) die projizierten Werte einer Sequenz mit summiert werden.
Hinweis
In diesem Codebeispiel wird eine Überladung der Methode verwendet, die sich von der spezifischen Überladung unterscheidet, die in diesem Artikel beschrieben wird. Um das Beispiel auf die In diesem Artikel beschriebene Überladung zu erweitern, ändern Sie den Textkörper der selector
Funktion.
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
Hinweise
Diese Methode verfügt über mindestens einen Parameter vom Typ Expression<TDelegate> , dessen Typargument einer der Func<T,TResult> Typen ist. Für diese Parameter können Sie einen Lambdaausdruck übergeben, der zu einem Expression<TDelegate>kompiliert wird.
Die Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>) -Methode generiert eine MethodCallExpression , die den Aufruf Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>) selbst als konstruierte generische Methode darstellt. Anschließend übergibt es die MethodCallExpression an die Execute<TResult>(Expression) -Methode von, die IQueryProvider durch die Provider -Eigenschaft des source
Parameters dargestellt wird.
Das Abfrageverhalten, das beim Ausführen einer Ausdrucksstruktur auftritt, die den Aufruf Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>) darstellt, hängt von der Implementierung des Typs des source
Parameters ab. Das erwartete Verhalten besteht darin, dass es für jedes Element von source
aufruft selector
und die Summe der resultierenden Werte zurückgibt.
Gilt für:
Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>)
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
Berechnet die Summe einer Sequenz von Int32-Werten, die NULL zulassen, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird.
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)
Typparameter
- TSource
Der Typ der Elemente von source
.
Parameter
- source
- IQueryable<TSource>
Eine Sequenz von Werten des Typs TSource
.
- selector
- Expression<Func<TSource,Nullable<Int32>>>
Eine Projektionsfunktion, die auf jedes Element angewendet werden soll.
Gibt zurück
Die Summe der projizierten Werte
Ausnahmen
source
oder selector
ist null
.
Die Summe ist größer als Int32.MaxValue.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) die projizierten Werte einer Sequenz mit summiert werden.
Hinweis
In diesem Codebeispiel wird eine Überladung der Methode verwendet, die sich von der spezifischen Überladung unterscheidet, die in diesem Artikel beschrieben wird. Um das Beispiel auf die In diesem Artikel beschriebene Überladung zu erweitern, ändern Sie den Textkörper der selector
Funktion.
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
Hinweise
Diese Methode verfügt über mindestens einen Parameter vom Typ Expression<TDelegate> , dessen Typargument einer der Func<T,TResult> Typen ist. Für diese Parameter können Sie einen Lambdaausdruck übergeben, der zu einem Expression<TDelegate>kompiliert wird.
Die Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>) -Methode generiert eine MethodCallExpression , die den Aufruf Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>) selbst als konstruierte generische Methode darstellt. Anschließend übergibt es die MethodCallExpression an die Execute<TResult>(Expression) -Methode von, die IQueryProvider durch die Provider -Eigenschaft des source
Parameters dargestellt wird.
Das Abfrageverhalten, das beim Ausführen einer Ausdrucksstruktur auftritt, die den Aufruf Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>) darstellt, hängt von der Implementierung des Typs des source
Parameters ab. Das erwartete Verhalten besteht darin, dass es für jedes Element von source
aufruft selector
und die Summe der resultierenden Werte zurückgibt.
Gilt für:
Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>)
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
Berechnet die Summe einer Sequenz von Int64-Werten, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird.
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
Typparameter
- TSource
Der Typ der Elemente von source
.
Parameter
- source
- IQueryable<TSource>
Eine Sequenz von Werten des Typs TSource
.
- selector
- Expression<Func<TSource,Int64>>
Eine Projektionsfunktion, die auf jedes Element angewendet werden soll.
Gibt zurück
Die Summe der projizierten Werte
Ausnahmen
source
oder selector
ist null
.
Die Summe ist größer als Int64.MaxValue.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) die projizierten Werte einer Sequenz mit summiert werden.
Hinweis
In diesem Codebeispiel wird eine Überladung der Methode verwendet, die sich von der spezifischen Überladung unterscheidet, die in diesem Artikel beschrieben wird. Um das Beispiel auf die In diesem Artikel beschriebene Überladung zu erweitern, ändern Sie den Textkörper der selector
Funktion.
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
Hinweise
Diese Methode verfügt über mindestens einen Parameter vom Typ Expression<TDelegate> , dessen Typargument einer der Func<T,TResult> Typen ist. Für diese Parameter können Sie einen Lambdaausdruck übergeben, der zu einem Expression<TDelegate>kompiliert wird.
Die Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>) -Methode generiert eine MethodCallExpression , die den Aufruf Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>) selbst als konstruierte generische Methode darstellt. Anschließend übergibt es die MethodCallExpression an die Execute<TResult>(Expression) -Methode von, die IQueryProvider durch die Provider -Eigenschaft des source
Parameters dargestellt wird.
Das Abfrageverhalten, das beim Ausführen einer Ausdrucksstruktur auftritt, die den Aufruf Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>) darstellt, hängt von der Implementierung des Typs des source
Parameters ab. Das erwartete Verhalten besteht darin, dass es für jedes Element von source
aufruft selector
und die Summe der resultierenden Werte zurückgibt.
Gilt für:
Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>)
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
Berechnet die Summe einer Sequenz von Decimal-Werten, die NULL zulassen, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird.
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)
Typparameter
- TSource
Der Typ der Elemente von source
.
Parameter
- source
- IQueryable<TSource>
Eine Sequenz von Werten des Typs TSource
.
- selector
- Expression<Func<TSource,Nullable<Decimal>>>
Eine Projektionsfunktion, die auf jedes Element angewendet werden soll.
Gibt zurück
Die Summe der projizierten Werte
Ausnahmen
source
oder selector
ist null
.
Die Summe ist größer als Decimal.MaxValue.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) die projizierten Werte einer Sequenz mit summiert werden.
Hinweis
In diesem Codebeispiel wird eine Überladung der Methode verwendet, die sich von der spezifischen Überladung unterscheidet, die in diesem Artikel beschrieben wird. Um das Beispiel auf die In diesem Artikel beschriebene Überladung zu erweitern, ändern Sie den Textkörper der selector
Funktion.
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
Hinweise
Diese Methode verfügt über mindestens einen Parameter vom Typ Expression<TDelegate> , dessen Typargument einer der Func<T,TResult> Typen ist. Für diese Parameter können Sie einen Lambdaausdruck übergeben, der zu einem Expression<TDelegate>kompiliert wird.
Die Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>) -Methode generiert eine MethodCallExpression , die den Aufruf Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>) selbst als konstruierte generische Methode darstellt. Anschließend übergibt es die MethodCallExpression an die Execute<TResult>(Expression) -Methode von, die IQueryProvider durch die Provider -Eigenschaft des source
Parameters dargestellt wird.
Das Abfrageverhalten, das beim Ausführen einer Ausdrucksstruktur auftritt, die den Aufruf Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>) darstellt, hängt von der Implementierung des Typs des source
Parameters ab. Das erwartete Verhalten besteht darin, dass es für jedes Element von source
aufruft selector
und die Summe der resultierenden Werte zurückgibt.
Gilt für:
Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>)
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
Berechnet die Summe einer Sequenz von Int32-Werten, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird.
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
Typparameter
- TSource
Der Typ der Elemente von source
.
Parameter
- source
- IQueryable<TSource>
Eine Sequenz von Werten des Typs TSource
.
- selector
- Expression<Func<TSource,Int32>>
Eine Projektionsfunktion, die auf jedes Element angewendet werden soll.
Gibt zurück
Die Summe der projizierten Werte
Ausnahmen
source
oder selector
ist null
.
Die Summe ist größer als Int32.MaxValue.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) die projizierten Werte einer Sequenz mit summiert werden.
Hinweis
In diesem Codebeispiel wird eine Überladung der Methode verwendet, die sich von der spezifischen Überladung unterscheidet, die in diesem Artikel beschrieben wird. Um das Beispiel auf die In diesem Artikel beschriebene Überladung zu erweitern, ändern Sie den Textkörper der selector
Funktion.
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
Hinweise
Diese Methode verfügt über mindestens einen Parameter vom Typ Expression<TDelegate> , dessen Typargument einer der Func<T,TResult> Typen ist. Für diese Parameter können Sie einen Lambdaausdruck übergeben, der zu einem Expression<TDelegate>kompiliert wird.
Die Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) -Methode generiert eine MethodCallExpression , die den Aufruf Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) selbst als konstruierte generische Methode darstellt. Anschließend übergibt es die MethodCallExpression an die Execute<TResult>(Expression) -Methode von, die IQueryProvider durch die Provider -Eigenschaft des source
Parameters dargestellt wird.
Das Abfrageverhalten, das beim Ausführen einer Ausdrucksstruktur auftritt, die den Aufruf Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) darstellt, hängt von der Implementierung des Typs des source
Parameters ab. Das erwartete Verhalten besteht darin, dass es für jedes Element von source
aufruft selector
und die Summe der resultierenden Werte zurückgibt.
Gilt für:
Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>)
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
Berechnet die Summe einer Sequenz von Double-Werten, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird.
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
Typparameter
- TSource
Der Typ der Elemente von source
.
Parameter
- source
- IQueryable<TSource>
Eine Sequenz von Werten des Typs TSource
.
- selector
- Expression<Func<TSource,Double>>
Eine Projektionsfunktion, die auf jedes Element angewendet werden soll.
Gibt zurück
Die Summe der projizierten Werte
Ausnahmen
source
oder selector
ist null
.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) die projizierten Werte einer Sequenz mit summiert werden.
Hinweis
In diesem Codebeispiel wird eine Überladung der Methode verwendet, die sich von der spezifischen Überladung unterscheidet, die in diesem Artikel beschrieben wird. Um das Beispiel auf die In diesem Artikel beschriebene Überladung zu erweitern, ändern Sie den Textkörper der selector
Funktion.
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
Hinweise
Diese Methode verfügt über mindestens einen Parameter vom Typ Expression<TDelegate> , dessen Typargument einer der Func<T,TResult> Typen ist. Für diese Parameter können Sie einen Lambdaausdruck übergeben, der zu einem Expression<TDelegate>kompiliert wird.
Die Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) -Methode generiert eine MethodCallExpression , die den Aufruf Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) selbst als konstruierte generische Methode darstellt. Anschließend übergibt es die MethodCallExpression an die Execute<TResult>(Expression) -Methode von, die IQueryProvider durch die Provider -Eigenschaft des source
Parameters dargestellt wird.
Das Abfrageverhalten, das beim Ausführen einer Ausdrucksstruktur auftritt, die den Aufruf Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) darstellt, hängt von der Implementierung des Typs des source
Parameters ab. Das erwartete Verhalten besteht darin, dass es für jedes Element von source
aufruft selector
und die Summe der resultierenden Werte zurückgibt.
Gilt für:
Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>)
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
- Quelle:
- Queryable.cs
Berechnet die Summe einer Sequenz von Decimal-Werten, die durch den Aufruf einer Projektionsfunktion für jedes Element der Eingabesequenz ermittelt wird.
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
Typparameter
- TSource
Der Typ der Elemente von source
.
Parameter
- source
- IQueryable<TSource>
Eine Sequenz von Werten des Typs TSource
.
- selector
- Expression<Func<TSource,Decimal>>
Eine Projektionsfunktion, die auf jedes Element angewendet werden soll.
Gibt zurück
Die Summe der projizierten Werte
Ausnahmen
source
oder selector
ist null
.
Die Summe ist größer als Decimal.MaxValue.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) die projizierten Werte einer Sequenz mit summiert werden.
Hinweis
In diesem Codebeispiel wird eine Überladung der Methode verwendet, die sich von der spezifischen Überladung unterscheidet, die in diesem Artikel beschrieben wird. Um das Beispiel auf die In diesem Artikel beschriebene Überladung zu erweitern, ändern Sie den Textkörper der selector
Funktion.
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
Hinweise
Diese Methode verfügt über mindestens einen Parameter vom Typ Expression<TDelegate> , dessen Typargument einer der Func<T,TResult> Typen ist. Für diese Parameter können Sie einen Lambdaausdruck übergeben, der zu einem Expression<TDelegate>kompiliert wird.
Die Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>) -Methode generiert eine MethodCallExpression , die den Aufruf Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>) selbst als konstruierte generische Methode darstellt. Anschließend übergibt es die MethodCallExpression an die Execute<TResult>(Expression) -Methode von, die IQueryProvider durch die Provider -Eigenschaft des source
Parameters dargestellt wird.
Das Abfrageverhalten, das beim Ausführen einer Ausdrucksstruktur auftritt, die den Aufruf Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>) darstellt, hängt von der Implementierung des Typs des source
Parameters ab. Das erwartete Verhalten besteht darin, dass es für jedes Element von source
aufruft selector
und die Summe der resultierenden Werte zurückgibt.