LINQ does not provide a standard default version Sumdue to the fact that the language and runtime (before dynamic) do not support allowing common ( <T>) to be added; there is no interface INumber, and the language does not support operators ( +) for generic types ( <T>). Go to overloads that accept Func<T, float>, Func<T, int>etc. - or use the MiscUtil library in whichincludes general Sum<T>, in particular:
public static TSource Sum<TSource>(this IEnumerable<TSource> source);
public static TValue Sum<TSource, TValue>(this IEnumerable<TSource> source,
Func<TSource,TValue> selector);
, + ( ..).