Просто добавьте предикат к своему Count()
выражению
int notdefined = db.EMPs.Count(x => x.JS_REF == 0);
или
int notdefined = db.EMPs.Count(x => String.IsNullOrEmpty(x.JS_REF.ToString()) == null);
Обратите внимание, что: int
не может быть нулевым. Если для него не установлено значение, то я считаю, что значением по умолчанию является ноль. Поэтому вы должны проверить, что ваш тип JS_REF
равен int
или int?
Код рефакторинга
Вы должны получить все данные одновременно считай с них, а не звони несколько раз.
var data = db.EMPs.Where(x => 0 <= x.JS_REF && x.JS_REF <= 4).Select(p => p.JS_REF ).ToList();
int undefined = data.Count(x => x == 1);
int regular = ddata.Count(x => x == 2);
int contractual = data.Count(x => x == 3);
int probationary = data.Count(x => x == 4);
int notdefined = data.Count(x => x == 0);