Je voudrais convertir foreach dans cette méthode en une expression linq. J'ai 2 try/catch parce que je ne peux pas toujours compter sur les chaînes qui sont passées dans la liste des guids ou guidToFind pour être des chaînes de guidage valides.foreach to linq avec comparaison guidée
public static bool IsGuidInList(List<string> guids, string guidToFind)
{
try
{
var guid = new Guid(guidToFind.Trim());
foreach (var g in guids)
{
try
{
var g2 = new Guid(g.Trim());
if (g2 == guid)
return true;
}
catch {} // swallow exception
}
}
catch{} // swallow exception
return false;
}
Vous êtes rapide avec les réponses. Et, désolé, j'ai modifié la méthode originale pour inclure un second essai/catch ... C'est ainsi que si l'une des chaînes de la liste n'est pas bonne, ce qui signifie qu'elle ne peut pas être convertie en guid, la méthode doesn ' t quitte immédiatement avec false. Il devrait essayer tous les éléments de la liste. – Kershaw
Est-ce que Guid peut être dans la liste des Guids? –