Queryable.Sum 메서드

정의

숫자 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of numeric values.

오버로드

Sum(IQueryable<Single>)

Single 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of Single values.

Sum(IQueryable<Nullable<Single>>)

nullable Single 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of nullable Single values.

Sum(IQueryable<Nullable<Int64>>)

nullable Int64 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of nullable Int64 values.

Sum(IQueryable<Nullable<Int32>>)

nullable Int32 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of nullable Int32 values.

Sum(IQueryable<Nullable<Double>>)

nullable Double 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of nullable Double values.

Sum(IQueryable<Int32>)

Int32 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of Int32 values.

Sum(IQueryable<Int64>)

Int64 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of Int64 values.

Sum(IQueryable<Nullable<Decimal>>)

nullable Decimal 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of nullable Decimal values.

Sum(IQueryable<Double>)

Double 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of Double values.

Sum(IQueryable<Decimal>)

Decimal 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of Decimal values.

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

입력 시퀀스의 각 요소에 대해 프로젝션 함수를 호출하여 가져온 nullable Single 값 시퀀스의 합을 계산합니다.Computes the sum of the sequence of nullable Single values that is obtained by invoking a projection function on each element of the input sequence.

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

입력 시퀀스의 각 요소에 대해 프로젝션 함수를 호출하여 가져온 nullable Int64 값 시퀀스의 합을 계산합니다.Computes the sum of the sequence of nullable Int64 values that is obtained by invoking a projection function on each element of the input sequence.

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

입력 시퀀스의 각 요소에 대해 프로젝션 함수를 호출하여 가져온 nullable Int32 값 시퀀스의 합을 계산합니다.Computes the sum of the sequence of nullable Int32 values that is obtained by invoking a projection function on each element of the input sequence.

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

입력 시퀀스의 각 요소에 대해 프로젝션 함수를 호출하여 가져온 nullable Double 값 시퀀스의 합을 계산합니다.Computes the sum of the sequence of nullable Double values that is obtained by invoking a projection function on each element of the input sequence.

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

입력 시퀀스의 각 요소에 대해 프로젝션 함수를 호출하여 가져온 Single 값 시퀀스의 합을 계산합니다.Computes the sum of the sequence of Single values that is obtained by invoking a projection function on each element of the input sequence.

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

입력 시퀀스의 각 요소에 대해 프로젝션 함수를 호출하여 가져온 Int64 값 시퀀스의 합을 계산합니다.Computes the sum of the sequence of Int64 values that is obtained by invoking a projection function on each element of the input sequence.

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

입력 시퀀스의 각 요소에 대해 프로젝션 함수를 호출하여 가져온 Int32 값 시퀀스의 합을 계산합니다.Computes the sum of the sequence of Int32 values that is obtained by invoking a projection function on each element of the input sequence.

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

입력 시퀀스의 각 요소에 대해 프로젝션 함수를 호출하여 가져온 Double 값 시퀀스의 합을 계산합니다.Computes the sum of the sequence of Double values that is obtained by invoking a projection function on each element of the input sequence.

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

입력 시퀀스의 각 요소에 대해 프로젝션 함수를 호출하여 가져온 Decimal 값 시퀀스의 합을 계산합니다.Computes the sum of the sequence of Decimal values that is obtained by invoking a projection function on each element of the input sequence.

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

입력 시퀀스의 각 요소에 대해 프로젝션 함수를 호출하여 가져온 nullable Decimal 값 시퀀스의 합을 계산합니다.Computes the sum of the sequence of nullable Decimal values that is obtained by invoking a projection function on each element of the input sequence.

Sum(IQueryable<Single>)

Single 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of Single values.

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

매개 변수

source
IQueryable<Single>

합을 계산할 Single 값의 시퀀스입니다.A sequence of Single values to calculate the sum of.

반환

Single

시퀀스에 있는 값의 합입니다.The sum of the values in the sequence.

예외

source이(가) null인 경우source is null.

예제

다음 코드 예제에서는를 사용 하 여 Sum(IQueryable<Single>) 시퀀스 값의 합계를 계산 하는 방법을 보여 줍니다.The following code example demonstrates how to use Sum(IQueryable<Single>) to sum the values of a sequence.

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.

설명

Sum(IQueryable<Single>)메서드는 자신을 MethodCallExpression 생성 된 제네릭 메서드로 호출 하는을 생성 합니다 Sum(IQueryable<Single>) .The Sum(IQueryable<Single>) method generates a MethodCallExpression that represents calling Sum(IQueryable<Single>) itself as a constructed generic method. 그런 다음 MethodCallExpression Execute<TResult>(Expression) IQueryProvider Provider 매개 변수의 속성이 나타내는의 메서드에를 전달 합니다 source .It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 Sum(IQueryable<Single>) 매개 변수의 형식 구현에 따라 달라 집니다 source .The query behavior that occurs as a result of executing an expression tree that represents calling Sum(IQueryable<Single>) depends on the implementation of the type of the source parameter. 예상 되는 동작은의 값 합계를 반환 한다는 것입니다 source .The expected behavior is that it returns the sum of the values in source.

적용 대상

Sum(IQueryable<Nullable<Single>>)

nullable Single 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of nullable Single values.

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<float> Sum(System::Linq::IQueryable<Nullable<float>> ^ source);
public static float? Sum (this System.Linq.IQueryable<Nullable<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)

매개 변수

source
IQueryable<Nullable<Single>>

합을 계산할 nullable Single 값의 시퀀스입니다.A sequence of nullable Single values to calculate the sum of.

반환

Nullable<Single>

시퀀스에 있는 값의 합입니다.The sum of the values in the sequence.

예외

source이(가) null인 경우source is null.

예제

다음 코드 예제에서는를 사용 하 여 Sum(IQueryable<Nullable<Single>>) 시퀀스 값의 합계를 계산 하는 방법을 보여 줍니다.The following code example demonstrates how to use Sum(IQueryable<Nullable<Single>>) to sum the values of a sequence.

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

설명

Sum(IQueryable<Nullable<Single>>)메서드는 자신을 MethodCallExpression 생성 된 제네릭 메서드로 호출 하는을 생성 합니다 Sum(IQueryable<Nullable<Single>>) .The Sum(IQueryable<Nullable<Single>>) method generates a MethodCallExpression that represents calling Sum(IQueryable<Nullable<Single>>) itself as a constructed generic method. 그런 다음 MethodCallExpression Execute<TResult>(Expression) IQueryProvider Provider 매개 변수의 속성이 나타내는의 메서드에를 전달 합니다 source .It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 Sum(IQueryable<Nullable<Single>>) 매개 변수의 형식 구현에 따라 달라 집니다 source .The query behavior that occurs as a result of executing an expression tree that represents calling Sum(IQueryable<Nullable<Single>>) depends on the implementation of the type of the source parameter. 예상 되는 동작은의 값 합계를 반환 한다는 것입니다 source .The expected behavior is that it returns the sum of the values in source.

적용 대상

Sum(IQueryable<Nullable<Int64>>)

nullable Int64 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of nullable Int64 values.

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<long> Sum(System::Linq::IQueryable<Nullable<long>> ^ source);
public static long? Sum (this System.Linq.IQueryable<Nullable<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)

매개 변수

source
IQueryable<Nullable<Int64>>

합을 계산할 nullable Int64 값의 시퀀스입니다.A sequence of nullable Int64 values to calculate the sum of.

반환

Nullable<Int64>

시퀀스에 있는 값의 합입니다.The sum of the values in the sequence.

예외

source이(가) null인 경우source is null.

합계가 MaxValue보다 큰 경우The sum is larger than MaxValue.

예제

다음 코드 예제에서는를 사용 하 여 Sum(IQueryable<Nullable<Single>>) 시퀀스 값의 합계를 계산 하는 방법을 보여 줍니다.The following code example demonstrates how to use Sum(IQueryable<Nullable<Single>>) to sum the values of a sequence.

참고

이 코드 예제에서는 이 항목에서 설명하는 특정 오버로드와는 다른 이 오버로드된 메서드의 오버로드를 사용합니다.This code example uses an overload of this overloaded method that is different from the specific overload that this topic describes. 이 항목의 예제를 확장하려면 소스 시퀀스의 요소를 적절한 숫자 형식의 요소로 대체하십시오.To extend the example to this topic, substitute the elements of the source sequence with elements of the appropriate numerical type.

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

설명

Sum(IQueryable<Nullable<Int64>>)메서드는 자신을 MethodCallExpression 생성 된 제네릭 메서드로 호출 하는을 생성 합니다 Sum(IQueryable<Nullable<Int64>>) .The Sum(IQueryable<Nullable<Int64>>) method generates a MethodCallExpression that represents calling Sum(IQueryable<Nullable<Int64>>) itself as a constructed generic method. 그런 다음 MethodCallExpression Execute<TResult>(Expression) IQueryProvider Provider 매개 변수의 속성이 나타내는의 메서드에를 전달 합니다 source .It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 Sum(IQueryable<Nullable<Int64>>) 매개 변수의 형식 구현에 따라 달라 집니다 source .The query behavior that occurs as a result of executing an expression tree that represents calling Sum(IQueryable<Nullable<Int64>>) depends on the implementation of the type of the source parameter. 예상 되는 동작은의 값 합계를 반환 한다는 것입니다 source .The expected behavior is that it returns the sum of the values in source.

적용 대상

Sum(IQueryable<Nullable<Int32>>)

nullable Int32 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of nullable Int32 values.

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<int> Sum(System::Linq::IQueryable<Nullable<int>> ^ source);
public static int? Sum (this System.Linq.IQueryable<Nullable<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)

매개 변수

source
IQueryable<Nullable<Int32>>

합을 계산할 nullable Int32 값의 시퀀스입니다.A sequence of nullable Int32 values to calculate the sum of.

반환

Nullable<Int32>

시퀀스에 있는 값의 합입니다.The sum of the values in the sequence.

예외

source이(가) null인 경우source is null.

합계가 MaxValue보다 큰 경우The sum is larger than MaxValue.

예제

다음 코드 예제에서는를 사용 하 여 Sum(IQueryable<Nullable<Single>>) 시퀀스 값의 합계를 계산 하는 방법을 보여 줍니다.The following code example demonstrates how to use Sum(IQueryable<Nullable<Single>>) to sum the values of a sequence.

참고

이 코드 예제에서는 이 항목에서 설명하는 특정 오버로드와는 다른 이 오버로드된 메서드의 오버로드를 사용합니다.This code example uses an overload of this overloaded method that is different from the specific overload that this topic describes. 이 항목의 예제를 확장하려면 소스 시퀀스의 요소를 적절한 숫자 형식의 요소로 대체하십시오.To extend the example to this topic, substitute the elements of the source sequence with elements of the appropriate numerical type.

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

설명

Sum(IQueryable<Nullable<Int32>>)메서드는 자신을 MethodCallExpression 생성 된 제네릭 메서드로 호출 하는을 생성 합니다 Sum(IQueryable<Nullable<Int32>>) .The Sum(IQueryable<Nullable<Int32>>) method generates a MethodCallExpression that represents calling Sum(IQueryable<Nullable<Int32>>) itself as a constructed generic method. 그런 다음 MethodCallExpression Execute<TResult>(Expression) IQueryProvider Provider 매개 변수의 속성이 나타내는의 메서드에를 전달 합니다 source .It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 Sum(IQueryable<Nullable<Int32>>) 매개 변수의 형식 구현에 따라 달라 집니다 source .The query behavior that occurs as a result of executing an expression tree that represents calling Sum(IQueryable<Nullable<Int32>>) depends on the implementation of the type of the source parameter. 예상 되는 동작은의 값 합계를 반환 한다는 것입니다 source .The expected behavior is that it returns the sum of the values in source.

적용 대상

Sum(IQueryable<Nullable<Double>>)

nullable Double 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of nullable Double values.

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<double> Sum(System::Linq::IQueryable<Nullable<double>> ^ source);
public static double? Sum (this System.Linq.IQueryable<Nullable<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)

매개 변수

source
IQueryable<Nullable<Double>>

합을 계산할 nullable Double 값의 시퀀스입니다.A sequence of nullable Double values to calculate the sum of.

반환

Nullable<Double>

시퀀스에 있는 값의 합입니다.The sum of the values in the sequence.

예외

source이(가) null인 경우source is null.

예제

다음 코드 예제에서는를 사용 하 여 Sum(IQueryable<Nullable<Single>>) 시퀀스 값의 합계를 계산 하는 방법을 보여 줍니다.The following code example demonstrates how to use Sum(IQueryable<Nullable<Single>>) to sum the values of a sequence.

참고

이 코드 예제에서는 이 항목에서 설명하는 특정 오버로드와는 다른 이 오버로드된 메서드의 오버로드를 사용합니다.This code example uses an overload of this overloaded method that is different from the specific overload that this topic describes. 이 항목의 예제를 확장하려면 소스 시퀀스의 요소를 적절한 숫자 형식의 요소로 대체하십시오.To extend the example to this topic, substitute the elements of the source sequence with elements of the appropriate numerical type.

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

설명

Sum(IQueryable<Nullable<Double>>)메서드는 자신을 MethodCallExpression 생성 된 제네릭 메서드로 호출 하는을 생성 합니다 Sum(IQueryable<Nullable<Double>>) .The Sum(IQueryable<Nullable<Double>>) method generates a MethodCallExpression that represents calling Sum(IQueryable<Nullable<Double>>) itself as a constructed generic method. 그런 다음 MethodCallExpression Execute<TResult>(Expression) IQueryProvider Provider 매개 변수의 속성이 나타내는의 메서드에를 전달 합니다 source .It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 Sum(IQueryable<Nullable<Double>>) 매개 변수의 형식 구현에 따라 달라 집니다 source .The query behavior that occurs as a result of executing an expression tree that represents calling Sum(IQueryable<Nullable<Double>>) depends on the implementation of the type of the source parameter. 예상 되는 동작은의 값 합계를 반환 한다는 것입니다 source .The expected behavior is that it returns the sum of the values in source.

적용 대상

Sum(IQueryable<Int32>)

Int32 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of Int32 values.

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

매개 변수

source
IQueryable<Int32>

합을 계산할 Int32 값의 시퀀스입니다.A sequence of Int32 values to calculate the sum of.

반환

Int32

시퀀스에 있는 값의 합입니다.The sum of the values in the sequence.

예외

source이(가) null인 경우source is null.

합계가 MaxValue보다 큰 경우The sum is larger than MaxValue.

예제

다음 코드 예제에서는를 사용 하 여 Sum(IQueryable<Single>) 시퀀스 값의 합계를 계산 하는 방법을 보여 줍니다.The following code example demonstrates how to use Sum(IQueryable<Single>) to sum the values of a sequence.

참고

이 코드 예제에서는 이 항목에서 설명하는 특정 오버로드와는 다른 이 오버로드된 메서드의 오버로드를 사용합니다.This code example uses an overload of this overloaded method that is different from the specific overload that this topic describes. 이 항목의 예제를 확장하려면 소스 시퀀스의 요소를 적절한 숫자 형식의 요소로 대체하십시오.To extend the example to this topic, substitute the elements of the source sequence with elements of the appropriate numerical type.

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.

설명

Sum(IQueryable<Int32>)메서드는 자신을 MethodCallExpression 생성 된 제네릭 메서드로 호출 하는을 생성 합니다 Sum(IQueryable<Int32>) .The Sum(IQueryable<Int32>) method generates a MethodCallExpression that represents calling Sum(IQueryable<Int32>) itself as a constructed generic method. 그런 다음 MethodCallExpression Execute<TResult>(Expression) IQueryProvider Provider 매개 변수의 속성이 나타내는의 메서드에를 전달 합니다 source .It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 Sum(IQueryable<Int32>) 매개 변수의 형식 구현에 따라 달라 집니다 source .The query behavior that occurs as a result of executing an expression tree that represents calling Sum(IQueryable<Int32>) depends on the implementation of the type of the source parameter. 예상 되는 동작은의 값 합계를 반환 한다는 것입니다 source .The expected behavior is that it returns the sum of the values in source.

적용 대상

Sum(IQueryable<Int64>)

Int64 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of Int64 values.

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

매개 변수

source
IQueryable<Int64>

합을 계산할 Int64 값의 시퀀스입니다.A sequence of Int64 values to calculate the sum of.

반환

Int64

시퀀스에 있는 값의 합입니다.The sum of the values in the sequence.

예외

source이(가) null인 경우source is null.

합계가 MaxValue보다 큰 경우The sum is larger than MaxValue.

예제

다음 코드 예제에서는를 사용 하 여 Sum(IQueryable<Single>) 시퀀스 값의 합계를 계산 하는 방법을 보여 줍니다.The following code example demonstrates how to use Sum(IQueryable<Single>) to sum the values of a sequence.

참고

이 코드 예제에서는 이 항목에서 설명하는 특정 오버로드와는 다른 이 오버로드된 메서드의 오버로드를 사용합니다.This code example uses an overload of this overloaded method that is different from the specific overload that this topic describes. 이 항목의 예제를 확장하려면 소스 시퀀스의 요소를 적절한 숫자 형식의 요소로 대체하십시오.To extend the example to this topic, substitute the elements of the source sequence with elements of the appropriate numerical type.

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.

설명

Sum(IQueryable<Int64>)메서드는 자신을 MethodCallExpression 생성 된 제네릭 메서드로 호출 하는을 생성 합니다 Sum(IQueryable<Int64>) .The Sum(IQueryable<Int64>) method generates a MethodCallExpression that represents calling Sum(IQueryable<Int64>) itself as a constructed generic method. 그런 다음 MethodCallExpression Execute<TResult>(Expression) IQueryProvider Provider 매개 변수의 속성이 나타내는의 메서드에를 전달 합니다 source .It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 Sum(IQueryable<Int64>) 매개 변수의 형식 구현에 따라 달라 집니다 source .The query behavior that occurs as a result of executing an expression tree that represents calling Sum(IQueryable<Int64>) depends on the implementation of the type of the source parameter. 예상 되는 동작은의 값 합계를 반환 한다는 것입니다 source .The expected behavior is that it returns the sum of the values in source.

적용 대상

Sum(IQueryable<Nullable<Decimal>>)

nullable Decimal 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of nullable Decimal values.

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<Nullable<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)

매개 변수

source
IQueryable<Nullable<Decimal>>

합을 계산할 nullable Decimal 값의 시퀀스입니다.A sequence of nullable Decimal values to calculate the sum of.

반환

Nullable<Decimal>

시퀀스에 있는 값의 합입니다.The sum of the values in the sequence.

예외

source이(가) null인 경우source is null.

합계가 MaxValue보다 큰 경우The sum is larger than MaxValue.

예제

다음 코드 예제에서는를 사용 하 여 Sum(IQueryable<Nullable<Single>>) 시퀀스 값의 합계를 계산 하는 방법을 보여 줍니다.The following code example demonstrates how to use Sum(IQueryable<Nullable<Single>>) to sum the values of a sequence.

참고

이 코드 예제에서는 이 항목에서 설명하는 특정 오버로드와는 다른 이 오버로드된 메서드의 오버로드를 사용합니다.This code example uses an overload of this overloaded method that is different from the specific overload that this topic describes. 이 항목의 예제를 확장하려면 소스 시퀀스의 요소를 적절한 숫자 형식의 요소로 대체하십시오.To extend the example to this topic, substitute the elements of the source sequence with elements of the appropriate numerical type.

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

설명

Sum(IQueryable<Nullable<Decimal>>)메서드는 자신을 MethodCallExpression 생성 된 제네릭 메서드로 호출 하는을 생성 합니다 Sum(IQueryable<Nullable<Decimal>>) .The Sum(IQueryable<Nullable<Decimal>>) method generates a MethodCallExpression that represents calling Sum(IQueryable<Nullable<Decimal>>) itself as a constructed generic method. 그런 다음 MethodCallExpression Execute<TResult>(Expression) IQueryProvider Provider 매개 변수의 속성이 나타내는의 메서드에를 전달 합니다 source .It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 Sum(IQueryable<Nullable<Decimal>>) 매개 변수의 형식 구현에 따라 달라 집니다 source .The query behavior that occurs as a result of executing an expression tree that represents calling Sum(IQueryable<Nullable<Decimal>>) depends on the implementation of the type of the source parameter. 예상 되는 동작은의 값 합계를 반환 한다는 것입니다 source .The expected behavior is that it returns the sum of the values in source.

적용 대상

Sum(IQueryable<Double>)

Double 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of Double values.

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

매개 변수

source
IQueryable<Double>

합을 계산할 Double 값의 시퀀스입니다.A sequence of Double values to calculate the sum of.

반환

Double

시퀀스에 있는 값의 합입니다.The sum of the values in the sequence.

예외

source이(가) null인 경우source is null.

예제

다음 코드 예제에서는를 사용 하 여 Sum(IQueryable<Single>) 시퀀스 값의 합계를 계산 하는 방법을 보여 줍니다.The following code example demonstrates how to use Sum(IQueryable<Single>) to sum the values of a sequence.

참고

이 코드 예제에서는 이 항목에서 설명하는 특정 오버로드와는 다른 이 오버로드된 메서드의 오버로드를 사용합니다.This code example uses an overload of this overloaded method that is different from the specific overload that this topic describes. 이 항목의 예제를 확장하려면 소스 시퀀스의 요소를 적절한 숫자 형식의 요소로 대체하십시오.To extend the example to this topic, substitute the elements of the source sequence with elements of the appropriate numerical type.

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.

설명

Sum(IQueryable<Double>)메서드는 자신을 MethodCallExpression 생성 된 제네릭 메서드로 호출 하는을 생성 합니다 Sum(IQueryable<Double>) .The Sum(IQueryable<Double>) method generates a MethodCallExpression that represents calling Sum(IQueryable<Double>) itself as a constructed generic method. 그런 다음 MethodCallExpression Execute<TResult>(Expression) IQueryProvider Provider 매개 변수의 속성이 나타내는의 메서드에를 전달 합니다 source .It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 Sum(IQueryable<Double>) 매개 변수의 형식 구현에 따라 달라 집니다 source .The query behavior that occurs as a result of executing an expression tree that represents calling Sum(IQueryable<Double>) depends on the implementation of the type of the source parameter. 예상 되는 동작은의 값 합계를 반환 한다는 것입니다 source .The expected behavior is that it returns the sum of the values in source.

적용 대상

Sum(IQueryable<Decimal>)

Decimal 값 시퀀스의 합을 계산합니다.Computes the sum of a sequence of Decimal values.

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

매개 변수

source
IQueryable<Decimal>

합을 계산할 Decimal 값의 시퀀스입니다.A sequence of Decimal values to calculate the sum of.

반환

Decimal

시퀀스에 있는 값의 합입니다.The sum of the values in the sequence.

예외

source이(가) null인 경우source is null.

합계가 MaxValue보다 큰 경우The sum is larger than MaxValue.

예제

다음 코드 예제에서는를 사용 하 여 Sum(IQueryable<Single>) 시퀀스 값의 합계를 계산 하는 방법을 보여 줍니다.The following code example demonstrates how to use Sum(IQueryable<Single>) to sum the values of a sequence.

참고

이 코드 예제에서는 이 항목에서 설명하는 특정 오버로드와는 다른 이 오버로드된 메서드의 오버로드를 사용합니다.This code example uses an overload of this overloaded method that is different from the specific overload that this topic describes. 이 항목의 예제를 확장하려면 소스 시퀀스의 요소를 적절한 숫자 형식의 요소로 대체하십시오.To extend the example to this topic, substitute the elements of the source sequence with elements of the appropriate numerical type.

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.

설명

Sum(IQueryable<Decimal>)메서드는 자신을 MethodCallExpression 생성 된 제네릭 메서드로 호출 하는을 생성 합니다 Sum(IQueryable<Decimal>) .The Sum(IQueryable<Decimal>) method generates a MethodCallExpression that represents calling Sum(IQueryable<Decimal>) itself as a constructed generic method. 그런 다음 MethodCallExpression Execute<TResult>(Expression) IQueryProvider Provider 매개 변수의 속성이 나타내는의 메서드에를 전달 합니다 source .It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 Sum(IQueryable<Decimal>) 매개 변수의 형식 구현에 따라 달라 집니다 source .The query behavior that occurs as a result of executing an expression tree that represents calling Sum(IQueryable<Decimal>) depends on the implementation of the type of the source parameter. 예상 되는 동작은의 값 합계를 반환 한다는 것입니다 source .The expected behavior is that it returns the sum of the values in source.

적용 대상

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

입력 시퀀스의 각 요소에 대해 프로젝션 함수를 호출하여 가져온 nullable Single 값 시퀀스의 합을 계산합니다.Computes the sum of the sequence of nullable Single values that is obtained by invoking a projection function on each element of the input sequence.

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,Nullable<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)

형식 매개 변수

TSource

source 요소의 형식입니다.The type of the elements of source.

매개 변수

source
IQueryable<TSource>

TSource 형식 값의 시퀀스입니다.A sequence of values of type TSource.

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

각 요소에 적용할 프로젝션 함수입니다.A projection function to apply to each element.

반환

Nullable<Single>

투영된 값의 합입니다.The sum of the projected values.

예외

source 또는 selectornull인 경우source or selector is null.

예제

다음 코드 예제에서는를 사용 하 여 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) 시퀀스의 프로젝션 된 값의 합계를 계산 하는 방법을 보여 줍니다.The following code example demonstrates how to use Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) to sum the projected values of a sequence.

참고

이 코드 예제에서는 이 항목에서 설명하는 특정 오버로드와는 다른 이 오버로드된 메서드의 오버로드를 사용합니다.This code example uses an overload of this overloaded method that is different from the specific overload that this topic describes. 이 항목의 예제를 확장하려면 selector 함수의 본문을 변경하세요.To extend the example to this topic, change the body of the selector function.

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

설명

이 메서드에 형식 인수가 형식 중 하나인 형식의 매개 변수가 하나 이상 있습니다 Expression<TDelegate> Func<T,TResult> .This method has at least one parameter of type Expression<TDelegate> whose type argument is one of the Func<T,TResult> types. 이러한 매개 변수는 람다 식을 전달할 수 있으며로 컴파일됩니다 Expression<TDelegate> .For these parameters, you can pass in a lambda expression and it will be compiled to an Expression<TDelegate>.

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>)메서드는 자신을 MethodCallExpression 생성 된 제네릭 메서드로 호출 하는을 생성 합니다 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>) .The Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>) method generates a MethodCallExpression that represents calling Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>) itself as a constructed generic method. 그런 다음 MethodCallExpression Execute<TResult>(Expression) IQueryProvider Provider 매개 변수의 속성이 나타내는의 메서드에를 전달 합니다 source .It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>) 매개 변수의 형식 구현에 따라 달라 집니다 source .The query behavior that occurs as a result of executing an expression tree that represents calling Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>) depends on the implementation of the type of the source parameter. 예상 되는 동작은 selector 의 각 요소에 대해를 호출 하 source 고 결과 값의 합계를 반환 하는 것입니다.The expected behavior is that it invokes selector on each element of source and returns the sum of the resulting values.

적용 대상

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

입력 시퀀스의 각 요소에 대해 프로젝션 함수를 호출하여 가져온 nullable Int64 값 시퀀스의 합을 계산합니다.Computes the sum of the sequence of nullable Int64 values that is obtained by invoking a projection function on each element of the input sequence.

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,Nullable<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)

형식 매개 변수

TSource

source 요소의 형식입니다.The type of the elements of source.

매개 변수

source
IQueryable<TSource>

TSource 형식 값의 시퀀스입니다.A sequence of values of type TSource.

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

각 요소에 적용할 프로젝션 함수입니다.A projection function to apply to each element.

반환

Nullable<Int64>

투영된 값의 합입니다.The sum of the projected values.

예외

source 또는 selectornull인 경우source or selector is null.

합계가 MaxValue보다 큰 경우The sum is larger than MaxValue.

예제

다음 코드 예제에서는를 사용 하 여 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) 시퀀스의 프로젝션 된 값의 합계를 계산 하는 방법을 보여 줍니다.The following code example demonstrates how to use Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) to sum the projected values of a sequence.

참고

이 코드 예제에서는 이 항목에서 설명하는 특정 오버로드와는 다른 이 오버로드된 메서드의 오버로드를 사용합니다.This code example uses an overload of this overloaded method that is different from the specific overload that this topic describes. 이 항목의 예제를 확장하려면 selector 함수의 본문을 변경하세요.To extend the example to this topic, change the body of the selector function.

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

설명

이 메서드에 형식 인수가 형식 중 하나인 형식의 매개 변수가 하나 이상 있습니다 Expression<TDelegate> Func<T,TResult> .This method has at least one parameter of type Expression<TDelegate> whose type argument is one of the Func<T,TResult> types. 이러한 매개 변수는 람다 식을 전달할 수 있으며로 컴파일됩니다 Expression<TDelegate> .For these parameters, you can pass in a lambda expression and it will be compiled to an Expression<TDelegate>.

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>)메서드는 자신을 MethodCallExpression 생성 된 제네릭 메서드로 호출 하는을 생성 합니다 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>) .The Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>) method generates a MethodCallExpression that represents calling Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>) itself as a constructed generic method. 그런 다음 MethodCallExpression Execute<TResult>(Expression) IQueryProvider Provider 매개 변수의 속성이 나타내는의 메서드에를 전달 합니다 source .It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>) 매개 변수의 형식 구현에 따라 달라 집니다 source .The query behavior that occurs as a result of executing an expression tree that represents calling Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>) depends on the implementation of the type of the source parameter. 예상 되는 동작은 selector 의 각 요소에 대해를 호출 하 source 고 결과 값의 합계를 반환 하는 것입니다.The expected behavior is that it invokes selector on each element of source and returns the sum of the resulting values.

적용 대상

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

입력 시퀀스의 각 요소에 대해 프로젝션 함수를 호출하여 가져온 nullable Int32 값 시퀀스의 합을 계산합니다.Computes the sum of the sequence of nullable Int32 values that is obtained by invoking a projection function on each element of the input sequence.

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,Nullable<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)

형식 매개 변수

TSource

source 요소의 형식입니다.The type of the elements of source.

매개 변수

source
IQueryable<TSource>

TSource 형식 값의 시퀀스입니다.A sequence of values of type TSource.

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

각 요소에 적용할 프로젝션 함수입니다.A projection function to apply to each element.

반환

Nullable<Int32>

투영된 값의 합입니다.The sum of the projected values.

예외

source 또는 selectornull인 경우source or selector is null.

합계가 MaxValue보다 큰 경우The sum is larger than MaxValue.

예제

다음 코드 예제에서는를 사용 하 여 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) 시퀀스의 프로젝션 된 값의 합계를 계산 하는 방법을 보여 줍니다.The following code example demonstrates how to use Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) to sum the projected values of a sequence.

참고

이 코드 예제에서는 이 항목에서 설명하는 특정 오버로드와는 다른 이 오버로드된 메서드의 오버로드를 사용합니다.This code example uses an overload of this overloaded method that is different from the specific overload that this topic describes. 이 항목의 예제를 확장하려면 selector 함수의 본문을 변경하세요.To extend the example to this topic, change the body of the selector function.

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

설명

이 메서드에 형식 인수가 형식 중 하나인 형식의 매개 변수가 하나 이상 있습니다 Expression<TDelegate> Func<T,TResult> .This method has at least one parameter of type Expression<TDelegate> whose type argument is one of the Func<T,TResult> types. 이러한 매개 변수는 람다 식을 전달할 수 있으며로 컴파일됩니다 Expression<TDelegate> .For these parameters, you can pass in a lambda expression and it will be compiled to an Expression<TDelegate>.

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>)메서드는 자신을 MethodCallExpression 생성 된 제네릭 메서드로 호출 하는을 생성 합니다 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>) .The Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>) method generates a MethodCallExpression that represents calling Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>) itself as a constructed generic method. 그런 다음 MethodCallExpression Execute<TResult>(Expression) IQueryProvider Provider 매개 변수의 속성이 나타내는의 메서드에를 전달 합니다 source .It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>) 매개 변수의 형식 구현에 따라 달라 집니다 source .The query behavior that occurs as a result of executing an expression tree that represents calling Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>) depends on the implementation of the type of the source parameter. 예상 되는 동작은 selector 의 각 요소에 대해를 호출 하 source 고 결과 값의 합계를 반환 하는 것입니다.The expected behavior is that it invokes selector on each element of source and returns the sum of the resulting values.

적용 대상

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

입력 시퀀스의 각 요소에 대해 프로젝션 함수를 호출하여 가져온 nullable Double 값 시퀀스의 합을 계산합니다.Computes the sum of the sequence of nullable Double values that is obtained by invoking a projection function on each element of the input sequence.

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,Nullable<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)

형식 매개 변수

TSource

source 요소의 형식입니다.The type of the elements of source.

매개 변수

source
IQueryable<TSource>

TSource 형식 값의 시퀀스입니다.A sequence of values of type TSource.

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

각 요소에 적용할 프로젝션 함수입니다.A projection function to apply to each element.

반환

Nullable<Double>

투영된 값의 합입니다.The sum of the projected values.

예외

source 또는 selectornull인 경우source or selector is null.

예제

다음 코드 예제에서는를 사용 하 여 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) 시퀀스의 프로젝션 된 값의 합계를 계산 하는 방법을 보여 줍니다.The following code example demonstrates how to use Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) to sum the projected values of a sequence.

참고

이 코드 예제에서는 이 항목에서 설명하는 특정 오버로드와는 다른 이 오버로드된 메서드의 오버로드를 사용합니다.This code example uses an overload of this overloaded method that is different from the specific overload that this topic describes. 이 항목의 예제를 확장하려면 selector 함수의 본문을 변경하세요.To extend the example to this topic, change the body of the selector function.

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

설명

이 메서드에 형식 인수가 형식 중 하나인 형식의 매개 변수가 하나 이상 있습니다 Expression<TDelegate> Func<T,TResult> .This method has at least one parameter of type Expression<TDelegate> whose type argument is one of the Func<T,TResult> types. 이러한 매개 변수는 람다 식을 전달할 수 있으며로 컴파일됩니다 Expression<TDelegate> .For these parameters, you can pass in a lambda expression and it will be compiled to an Expression<TDelegate>.

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>)메서드는 자신을 MethodCallExpression 생성 된 제네릭 메서드로 호출 하는을 생성 합니다 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>) .The Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>) method generates a MethodCallExpression that represents calling Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>) itself as a constructed generic method. 그런 다음 MethodCallExpression Execute<TResult>(Expression) IQueryProvider Provider 매개 변수의 속성이 나타내는의 메서드에를 전달 합니다 source .It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>) 매개 변수의 형식 구현에 따라 달라 집니다 source .The query behavior that occurs as a result of executing an expression tree that represents calling Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>) depends on the implementation of the type of the source parameter. 예상 되는 동작은 selector 의 각 요소에 대해를 호출 하 source 고 결과 값의 합계를 반환 하는 것입니다.The expected behavior is that it invokes selector on each element of source and returns the sum of the resulting values.

적용 대상

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

입력 시퀀스의 각 요소에 대해 프로젝션 함수를 호출하여 가져온 Single 값 시퀀스의 합을 계산합니다.Computes the sum of the sequence of Single values that is obtained by invoking a projection function on each element of the input sequence.

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

형식 매개 변수

TSource

source 요소의 형식입니다.The type of the elements of source.

매개 변수

source
IQueryable<TSource>

TSource 형식 값의 시퀀스입니다.A sequence of values of type TSource.

selector
Expression<Func<TSource,Single>>

각 요소에 적용할 프로젝션 함수입니다.A projection function to apply to each element.

반환

Single

투영된 값의 합입니다.The sum of the projected values.

예외

source 또는 selectornull인 경우source or selector is null.

예제

다음 코드 예제에서는를 사용 하 여 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) 시퀀스의 프로젝션 된 값의 합계를 계산 하는 방법을 보여 줍니다.The following code example demonstrates how to use Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) to sum the projected values of a sequence.

참고

이 코드 예제에서는 이 항목에서 설명하는 특정 오버로드와는 다른 이 오버로드된 메서드의 오버로드를 사용합니다.This code example uses an overload of this overloaded method that is different from the specific overload that this topic describes. 이 항목의 예제를 확장하려면 selector 함수의 본문을 변경하세요.To extend the example to this topic, change the body of the selector function.

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

설명

이 메서드에 형식 인수가 형식 중 하나인 형식의 매개 변수가 하나 이상 있습니다 Expression<TDelegate> Func<T,TResult> .This method has at least one parameter of type Expression<TDelegate> whose type argument is one of the Func<T,TResult> types. 이러한 매개 변수는 람다 식을 전달할 수 있으며로 컴파일됩니다 Expression<TDelegate> .For these parameters, you can pass in a lambda expression and it will be compiled to an Expression<TDelegate>.

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>)메서드는 자신을 MethodCallExpression 생성 된 제네릭 메서드로 호출 하는을 생성 합니다 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>) .The Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>) method generates a MethodCallExpression that represents calling Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>) itself as a constructed generic method. 그런 다음 MethodCallExpression Execute<TResult>(Expression) IQueryProvider Provider 매개 변수의 속성이 나타내는의 메서드에를 전달 합니다 source .It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>) 매개 변수의 형식 구현에 따라 달라 집니다 source .The query behavior that occurs as a result of executing an expression tree that represents calling Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>) depends on the implementation of the type of the source parameter. 예상 되는 동작은 selector 의 각 요소에 대해를 호출 하 source 고 결과 값의 합계를 반환 하는 것입니다.The expected behavior is that it invokes selector on each element of source and returns the sum of the resulting values.

적용 대상

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

입력 시퀀스의 각 요소에 대해 프로젝션 함수를 호출하여 가져온 Int64 값 시퀀스의 합을 계산합니다.Computes the sum of the sequence of Int64 values that is obtained by invoking a projection function on each element of the input sequence.

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

형식 매개 변수

TSource

source 요소의 형식입니다.The type of the elements of source.

매개 변수

source
IQueryable<TSource>

TSource 형식 값의 시퀀스입니다.A sequence of values of type TSource.

selector
Expression<Func<TSource,Int64>>

각 요소에 적용할 프로젝션 함수입니다.A projection function to apply to each element.

반환

Int64

투영된 값의 합입니다.The sum of the projected values.

예외

source 또는 selectornull인 경우source or selector is null.

합계가 MaxValue보다 큰 경우The sum is larger than MaxValue.

예제

다음 코드 예제에서는를 사용 하 여 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) 시퀀스의 프로젝션 된 값의 합계를 계산 하는 방법을 보여 줍니다.The following code example demonstrates how to use Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) to sum the projected values of a sequence.

참고

이 코드 예제에서는 이 항목에서 설명하는 특정 오버로드와는 다른 이 오버로드된 메서드의 오버로드를 사용합니다.This code example uses an overload of this overloaded method that is different from the specific overload that this topic describes. 이 항목의 예제를 확장하려면 selector 함수의 본문을 변경하세요.To extend the example to this topic, change the body of the selector function.

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

설명

이 메서드에 형식 인수가 형식 중 하나인 형식의 매개 변수가 하나 이상 있습니다 Expression<TDelegate> Func<T,TResult> .This method has at least one parameter of type Expression<TDelegate> whose type argument is one of the Func<T,TResult> types. 이러한 매개 변수는 람다 식을 전달할 수 있으며로 컴파일됩니다 Expression<TDelegate> .For these parameters, you can pass in a lambda expression and it will be compiled to an Expression<TDelegate>.

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>)메서드는 자신을 MethodCallExpression 생성 된 제네릭 메서드로 호출 하는을 생성 합니다 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>) .The Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>) method generates a MethodCallExpression that represents calling Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>) itself as a constructed generic method. 그런 다음 MethodCallExpression Execute<TResult>(Expression) IQueryProvider Provider 매개 변수의 속성이 나타내는의 메서드에를 전달 합니다 source .It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>) 매개 변수의 형식 구현에 따라 달라 집니다 source .The query behavior that occurs as a result of executing an expression tree that represents calling Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>) depends on the implementation of the type of the source parameter. 예상 되는 동작은 selector 의 각 요소에 대해를 호출 하 source 고 결과 값의 합계를 반환 하는 것입니다.The expected behavior is that it invokes selector on each element of source and returns the sum of the resulting values.

적용 대상

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

입력 시퀀스의 각 요소에 대해 프로젝션 함수를 호출하여 가져온 Int32 값 시퀀스의 합을 계산합니다.Computes the sum of the sequence of Int32 values that is obtained by invoking a projection function on each element of the input sequence.

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

형식 매개 변수

TSource

source 요소의 형식입니다.The type of the elements of source.

매개 변수

source
IQueryable<TSource>

TSource 형식 값의 시퀀스입니다.A sequence of values of type TSource.

selector
Expression<Func<TSource,Int32>>

각 요소에 적용할 프로젝션 함수입니다.A projection function to apply to each element.

반환

Int32

투영된 값의 합입니다.The sum of the projected values.

예외

source 또는 selectornull인 경우source or selector is null.

합계가 MaxValue보다 큰 경우The sum is larger than MaxValue.

예제

다음 코드 예제에서는를 사용 하 여 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) 시퀀스의 프로젝션 된 값의 합계를 계산 하는 방법을 보여 줍니다.The following code example demonstrates how to use Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) to sum the projected values of a sequence.

참고

이 코드 예제에서는 이 항목에서 설명하는 특정 오버로드와는 다른 이 오버로드된 메서드의 오버로드를 사용합니다.This code example uses an overload of this overloaded method that is different from the specific overload that this topic describes. 이 항목의 예제를 확장하려면 selector 함수의 본문을 변경하세요.To extend the example to this topic, change the body of the selector function.

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

설명

이 메서드에 형식 인수가 형식 중 하나인 형식의 매개 변수가 하나 이상 있습니다 Expression<TDelegate> Func<T,TResult> .This method has at least one parameter of type Expression<TDelegate> whose type argument is one of the Func<T,TResult> types. 이러한 매개 변수는 람다 식을 전달할 수 있으며로 컴파일됩니다 Expression<TDelegate> .For these parameters, you can pass in a lambda expression and it will be compiled to an Expression<TDelegate>.

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>)메서드는 자신을 MethodCallExpression 생성 된 제네릭 메서드로 호출 하는을 생성 합니다 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) .The Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) method generates a MethodCallExpression that represents calling Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) itself as a constructed generic method. 그런 다음 MethodCallExpression Execute<TResult>(Expression) IQueryProvider Provider 매개 변수의 속성이 나타내는의 메서드에를 전달 합니다 source .It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) 매개 변수의 형식 구현에 따라 달라 집니다 source .The query behavior that occurs as a result of executing an expression tree that represents calling Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>) depends on the implementation of the type of the source parameter. 예상 되는 동작은 selector 의 각 요소에 대해를 호출 하 source 고 결과 값의 합계를 반환 하는 것입니다.The expected behavior is that it invokes selector on each element of source and returns the sum of the resulting values.

적용 대상

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

입력 시퀀스의 각 요소에 대해 프로젝션 함수를 호출하여 가져온 Double 값 시퀀스의 합을 계산합니다.Computes the sum of the sequence of Double values that is obtained by invoking a projection function on each element of the input sequence.

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

형식 매개 변수

TSource

source 요소의 형식입니다.The type of the elements of source.

매개 변수

source
IQueryable<TSource>

TSource 형식 값의 시퀀스입니다.A sequence of values of type TSource.

selector
Expression<Func<TSource,Double>>

각 요소에 적용할 프로젝션 함수입니다.A projection function to apply to each element.

반환

Double

투영된 값의 합입니다.The sum of the projected values.

예외

source 또는 selectornull인 경우source or selector is null.

예제

다음 코드 예제에서는를 사용 하 여 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) 시퀀스의 프로젝션 된 값의 합계를 계산 하는 방법을 보여 줍니다.The following code example demonstrates how to use Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) to sum the projected values of a sequence.

참고

이 코드 예제에서는 이 항목에서 설명하는 특정 오버로드와는 다른 이 오버로드된 메서드의 오버로드를 사용합니다.This code example uses an overload of this overloaded method that is different from the specific overload that this topic describes. 이 항목의 예제를 확장하려면 selector 함수의 본문을 변경하세요.To extend the example to this topic, change the body of the selector function.

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

설명

이 메서드에 형식 인수가 형식 중 하나인 형식의 매개 변수가 하나 이상 있습니다 Expression<TDelegate> Func<T,TResult> .This method has at least one parameter of type Expression<TDelegate> whose type argument is one of the Func<T,TResult> types. 이러한 매개 변수는 람다 식을 전달할 수 있으며로 컴파일됩니다 Expression<TDelegate> .For these parameters, you can pass in a lambda expression and it will be compiled to an Expression<TDelegate>.

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>)메서드는 자신을 MethodCallExpression 생성 된 제네릭 메서드로 호출 하는을 생성 합니다 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) .The Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) method generates a MethodCallExpression that represents calling Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) itself as a constructed generic method. 그런 다음 MethodCallExpression Execute<TResult>(Expression) IQueryProvider Provider 매개 변수의 속성이 나타내는의 메서드에를 전달 합니다 source .It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) 매개 변수의 형식 구현에 따라 달라 집니다 source .The query behavior that occurs as a result of executing an expression tree that represents calling Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) depends on the implementation of the type of he source parameter. 예상 되는 동작은 selector 의 각 요소에 대해를 호출 하 source 고 결과 값의 합계를 반환 하는 것입니다.The expected behavior is that it invokes selector on each element of source and returns the sum of the resulting values.

적용 대상

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

입력 시퀀스의 각 요소에 대해 프로젝션 함수를 호출하여 가져온 Decimal 값 시퀀스의 합을 계산합니다.Computes the sum of the sequence of Decimal values that is obtained by invoking a projection function on each element of the input sequence.

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

형식 매개 변수

TSource

source 요소의 형식입니다.The type of the elements of source.

매개 변수

source
IQueryable<TSource>

TSource 형식 값의 시퀀스입니다.A sequence of values of type TSource.

selector
Expression<Func<TSource,Decimal>>

각 요소에 적용할 프로젝션 함수입니다.A projection function to apply to each element.

반환

Decimal

투영된 값의 합입니다.The sum of the projected values.

예외

source 또는 selectornull인 경우source or selector is null.

합계가 MaxValue보다 큰 경우The sum is larger than MaxValue.

예제

다음 코드 예제에서는를 사용 하 여 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) 시퀀스의 프로젝션 된 값의 합계를 계산 하는 방법을 보여 줍니다.The following code example demonstrates how to use Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) to sum the projected values of a sequence.

참고

이 코드 예제에서는 이 항목에서 설명하는 특정 오버로드와는 다른 이 오버로드된 메서드의 오버로드를 사용합니다.This code example uses an overload of this overloaded method that is different from the specific overload that this topic describes. 이 항목의 예제를 확장하려면 selector 함수의 본문을 변경하세요.To extend the example to this topic, change the body of the selector function.

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

설명

이 메서드에 형식 인수가 형식 중 하나인 형식의 매개 변수가 하나 이상 있습니다 Expression<TDelegate> Func<T,TResult> .This method has at least one parameter of type Expression<TDelegate> whose type argument is one of the Func<T,TResult> types. 이러한 매개 변수는 람다 식을 전달할 수 있으며로 컴파일됩니다 Expression<TDelegate> .For these parameters, you can pass in a lambda expression and it will be compiled to an Expression<TDelegate>.

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>)메서드는 자신을 MethodCallExpression 생성 된 제네릭 메서드로 호출 하는을 생성 합니다 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>) .The Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>) method generates a MethodCallExpression that represents calling Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>) itself as a constructed generic method. 그런 다음 MethodCallExpression Execute<TResult>(Expression) IQueryProvider Provider 매개 변수의 속성이 나타내는의 메서드에를 전달 합니다 source .It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>) 매개 변수의 형식 구현에 따라 달라 집니다 source .The query behavior that occurs as a result of executing an expression tree that represents calling Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>) depends on the implementation of the type of the source parameter. 예상 되는 동작은 selector 의 각 요소에 대해를 호출 하 source 고 결과 값의 합계를 반환 하는 것입니다.The expected behavior is that it invokes selector on each element of source and returns the sum of the resulting values.

적용 대상

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

입력 시퀀스의 각 요소에 대해 프로젝션 함수를 호출하여 가져온 nullable Decimal 값 시퀀스의 합을 계산합니다.Computes the sum of the sequence of nullable Decimal values that is obtained by invoking a projection function on each element of the input sequence.

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,Nullable<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)

형식 매개 변수

TSource

source 요소의 형식입니다.The type of the elements of source.

매개 변수

source
IQueryable<TSource>

TSource 형식 값의 시퀀스입니다.A sequence of values of type TSource.

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

각 요소에 적용할 프로젝션 함수입니다.A projection function to apply to each element.

반환

Nullable<Decimal>

투영된 값의 합입니다.The sum of the projected values.

예외

source 또는 selectornull인 경우source or selector is null.

합계가 MaxValue보다 큰 경우The sum is larger than MaxValue.

예제

다음 코드 예제에서는를 사용 하 여 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) 시퀀스의 프로젝션 된 값의 합계를 계산 하는 방법을 보여 줍니다.The following code example demonstrates how to use Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>) to sum the projected values of a sequence.

참고

이 코드 예제에서는 이 항목에서 설명하는 특정 오버로드와는 다른 이 오버로드된 메서드의 오버로드를 사용합니다.This code example uses an overload of this overloaded method that is different from the specific overload that this topic describes. 이 항목의 예제를 확장하려면 selector 함수의 본문을 변경하세요.To extend the example to this topic, change the body of the selector function.

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

설명

이 메서드에 형식 인수가 형식 중 하나인 형식의 매개 변수가 하나 이상 있습니다 Expression<TDelegate> Func<T,TResult> .This method has at least one parameter of type Expression<TDelegate> whose type argument is one of the Func<T,TResult> types. 이러한 매개 변수는 람다 식을 전달할 수 있으며로 컴파일됩니다 Expression<TDelegate> .For these parameters, you can pass in a lambda expression and it will be compiled to an Expression<TDelegate>.

Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>)메서드는 자신을 MethodCallExpression 생성 된 제네릭 메서드로 호출 하는을 생성 합니다 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>) .The Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>) method generates a MethodCallExpression that represents calling Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>) itself as a constructed generic method. 그런 다음 MethodCallExpression Execute<TResult>(Expression) IQueryProvider Provider 매개 변수의 속성이 나타내는의 메서드에를 전달 합니다 source .It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

호출을 나타내는 식 트리를 실행 한 결과로 발생 하는 쿼리 동작은 Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>) 매개 변수의 형식 구현에 따라 달라 집니다 source .The query behavior that occurs as a result of executing an expression tree that represents calling Sum<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>) depends on the implementation of the type of the source parameter. 예상 되는 동작은 selector 의 각 요소에 대해를 호출 하 source 고 결과 값의 합계를 반환 하는 것입니다.The expected behavior is that it invokes selector on each element of source and returns the sum of the resulting values.

적용 대상