비즈니스 데이터를 나타내는 개체가 있습니다.개체에 Linq SUM?
public class MyClass{
public double MyDataOne {get;set;}
public double MyDataTwo {get;set;}
public double MyDataThree {get;set;}
public static MyClass operator +(MyClass data1, MyClass data2){
return new MyClass{MyDataOne = data1.MyDataOne + data2.MyDataOne, MyDataTwo=data1.MyDataTwo+data2.MyDataTwo, MyDataThree=data1.MyDataThree+data2.MyDataThree };
}
}
내가 IEnumerable<MyClass> myClasses
을 한 경우, 나는이를 만들기 위해 MyClass의에서 구현할 수있다 일도인가, 이제 :? :
기본적으로, 약간의 합계를 agregating 객체입니다
myClasses.Sum(d=>d);
나를 위해, 객체가 additioned되는 방법은 개체의 지식이 아닌 호출해야하기 때문에 (언젠가는 하나 개의 데이터보다, 내 전체 코드에서보고 싶지 않은 한 경우 어디에서 사용되는지 확인하십시오).
이public static MyClass Sum(this IEnumerable<MyClass> source)
{
var result = new MyClass(); // all data will be zeros
foreach(var item in source)
result = result + item;
return result;
}
사용법 :
는
http://stackoverflow.com/a/13661394/1714342 뭔가 설명합니다. – wudzik