использовать Int.Parse, не приводить строку к int
var ss=_someClassDataSource.Sum(s=>int.Parse(s.BreakdownCover));
Если вы работаете с VB.NET, используйте
var ss=_someClassDataSource.Sum(s=>Integer.Parse(s.BreakdownCover));
Вот почему вы не можете привести строку к int:
Поскольку явное приведение не реализовано ... ToString () является общим
метод (реализован в System.Object) и если строка будет реализована
бросок, который задал бы вопрос, если все другие классы должны
реализовать это тоже ...
Потенциально было бы лучше не использовать Convert.ToInt32 (), потому что Convert.ToInt32 по-прежнему будет возвращать значение, когда строка пуста, а int.Parse будет выбрасывать. Вы можете получить неожиданные результаты с Convert.ToInt32. Также см. Этот вопрос В чем основное различие между int.Parse () и Convert.ToInt32
Конечно, это основано на контексте, который указал @Andy. Если вы согласны с тем, что NULL рассматривается как 0, тогда любой из методов будет работать.