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
Et ce que la propriété est null?
Pourquoi êtes-vous de vérifier
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
Vous devez vous connecter pour publier un commentaire.
Si vous voulez permettre à tous les
accs
passe quandaccountStatus
estnull
, faites ceci:OriginalL'auteur Patrick Hofman