How to check a var for null value?-Collection of common programming errors
if (result != null || result.Count() == 0) {
// Checks whether the entire result is null OR
// contains no resulting records.
}
I think the problem is not in your check for null, because linq is lazy loading. Your error is in using the expression db.SingleOrDefault(getUserQuery);.
.Single(expression) does not return null – it errors if the result returns no values. .SingleOrDefault(expression), however, returns a null value if the expression results in no values – and therefore is best combined with an if (result == null) type check, as you’re using here.