Vérifier si l'objet est Null dans la Requête Linq

Comment voulez-vous vérifier si un objet est vide avec une requête LINQ ?

Si l'objet est vide je veux omettre de recherche.

Je ne veux pas faire un if Else et duplication de code et de vérifier si l'objet est Null, avant de l'interroger. En ce moment, ma requête renvoie une erreur si l'objet n'est pas vide "Nullable objet doit avoir une valeur."

public ActionResult Search(List<int> accountStatus = null , string accountName = "", int pageId = 1)
    {
        var model = Db.Entities
            .Where(i => i.GroupId == null && i.IsActive)
            .Where(an => string.IsNullOrEmpty(accountName) || (an.Name.StartsWith(accountName) || an.Name.Contains(accountName)))
            .ToList()
            .Where(accs => accountStatus == null || accountStatus.Contains((int)accs.CurrentStatusId.Value))
            .OrderByDescending(x => x.CreatedDate);    

        if (Request.IsAjaxRequest())
        {
            return PartialView("********", model.ToPagedList(pageId, nbItemsPerPage));
        }

        return View(model);
    }
La ligne de retour de l'erreur?
Vous pourriez raconter à la propriété qui est null. Aussi, pourquoi faire une ToList au moyen de votre code?
.Where(accs => accountStatus == null || accountStatus.Contains((int)accs.CurrentStatusId.Value))
Et ce que la propriété est null?
Pourquoi êtes-vous de vérifier accountStatus de nullité (==null) ? Ne voulez-vous de assurez-vous que c'est null?

OriginalL'auteur | 2015-05-10