2016-08-07 1 views
0

J'ai une liste de chaînes comme;Vérifiez si une liste de chaînes contient un élément

public static readonly List<string> myList = new List<string> 
{ 
    "123", 
    "456", 
    "789" 
}; 

Et j'ai une méthode, disons MethodX (chaîne). MethodX (chaîne) recherche et compare la chaîne entrée dans une autre liste de chaînes provenant de l'API. Il renvoie true si une chaîne entrée correspond à une chaîne de la liste.

Maintenant ce que je fais est; Je souhaite que tous les membres de la liste de chaînes soient entrés MethodX() et vérifient si c'est vrai. Mais actuellement, il essaie seulement "123" comme le premier membre de myList.

Comment puis-je y arriver?

+0

Quelque chose comme myList.Any (str => MethodX (str)) ne fonctionnerait pas? Dans votre exemple de code, vous utilisez maladroitement MethodX, en passant une liste et non une chaîne. Accepte-t-il une chaîne ou une liste de chaînes? –

+0

@WhaleSong il accepte seulement la chaîne mais comme c'est une liste je l'utilise à l'intérieur de foreach. Donc, il devrait être à la recherche de chaque membre, je suppose? – Emir

+0

Il semble juste alors! –

Répondre

0
bool MethodX(this List<string>,string x) 
{ 
    return this.Any(s=>s==x); 
}