Bonjour,

Je suis en train de développer une application utilisant SQL Server 2005 par le biais de LINQ (très pratique au passage si on sait limiter ses requêtes pour ne pas surcharger).

J'ai une table avec plusieurs clés étrangères.

Une fenêtre de l'application contient une sorte de moteur de recherche avec plusieurs critères facultatives (des combobox avec des valeurs prédéfinies et issues de la BDD), un bouton "chercher" et un datagridview qui montre le résultat.

Pour simplifier ma question, le clic sur le bouton appelle cette fonction :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
private void rechercherCandidat(string nom, CandidatSituation situation, CandidatNote note) {
 
[...]
 
}
On peut se contenter d'une simple requête LINQ :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
from c in db.Candidat where
c.ca_nom.Equals(nom) &&
c.CandidatSituation.csi_ref == situation.csi_ref &&
c.CandidatNote.cn_ref == note.cn_ref
select c;
MAIS le problème est le suivant : les paramètres ne sont pas obligatoires et il se peut qu'il y en ait qui soient NULL.

Comment gérer au mieux les types NULL sans faire planter la requête ?

Merci pour vos réponses