As the comments suggest, you should normalize your data.
However, if you cannot do this, you just need to count the number of truths in each row.
context.Studs.Sum(s => (sI ? 1 : 0) + (s.II ? 1 : 0) + ... + (s.VIII ? 1 : 0));
edit: To limit the amount based on StudID and month, you should use the Where statement
var id = "100"; var month = 10; var set = context.Studs.Where(s => s.StudID == id; set = set.Where(s => s.Date.Month == month); return set.Sum(s => (sI ? 1 : 0) + (s.II ? 1 : 0) + ... + (s.VIII ? 1 : 0));
source share