Aquí teniu un codi per saber si un element existeix dins d'una llista d'objectes.
Aquest seria l'equivalent en C# del in_array() de php
Tenim una llista declarada, per exemple, aquesta llista d'strings:
List llista = new List();
I una string que continga el valor a buscar dins la llista:
string buscar = "hola";
Per retornar el primer valor trobat (si existeix), es fa amb el següent iterador Find, que retornarà el valor per defecte del tipus si no s'ha trobat (usualment, null) i el valor si existeix dins de la llista.
string res = llista.Find(delegate(string s)
{
return (s == buscar); //codi que comprova la igualtat
});
if (res == null) Console.WriteLine("No trobat");
else Console.WriteLine("Valor trobat dins de la llista");
Us diré també com fer un for ... each (foreach) d'una llista d'una manera molt elegant:
llista.ForEach(delegate(string s) {
Console.WriteLine(s); //fer acció amb el valor
});
Al final m'acabarà agradant C#.