Voici une version simplifiée de ce que je suis en train de faire:
var days = new Dictionary<int, string>();
days.Add(1, "Monday");
days.Add(2, "Tuesday");
...
days.Add(7, "Sunday");
var sampleText = "My favorite day of the week is 'xyz'";
var day = days.FirstOrDefault(x => sampleText.Contains(x.Value));
Depuis 'xyz' n'est pas présent dans la KeyValuePair variable, le FirstOrDefault méthode ne retourne pas une valeur valide. Je veux être en mesure de vérifier cette situation, mais je me rends compte que je ne peux pas comparer le résultat à la valeur "null" parce que KeyValuePair est une struc. Le code suivant est valide:
if (day == null) {
System.Diagnotics.Debug.Write("Couldn't find day of week");
}
Nous vous tentez de compiler le code, Visual Studio lance le message d'erreur suivant:
Operator '==' cannot be applied to operands of type 'System.Collections.Generic.KeyValuePair<int,string>' and '<null>'
Comment puis-je vérifier que FirstOrDefault a retourné une valeur valide?