Se si dispone di un elenco come si restituisce l'articolo se esiste una proprietà o una raccolta di proprietà specificata?List.Contains (elemento) con elenco di oggetti generico
public class Testing
{
public string value1 { get; set; }
public string value2 { get; set; }
public int value3 { get; set; }
}
public class TestingList
{
public void TestingNewList()
{
var testList = new List<Testing>
{
new Testing {value1 = "Value1 - 1", value2 = "Value2 - 1", value3 = 3},
new Testing {value1 = "Value1 - 2", value2 = "Value2 - 2", value3 = 2},
new Testing {value1 = "Value1 - 3", value2 = "Value2 - 3", value3 = 3},
new Testing {value1 = "Value1 - 4", value2 = "Value2 - 4", value3 = 4},
new Testing {value1 = "Value1 - 5", value2 = "Value2 - 5", value3 = 5},
new Testing {value1 = "Value1 - 6", value2 = "Value2 - 6", value3 = 6},
new Testing {value1 = "Value1 - 7", value2 = "Value2 - 7", value3 = 7}
};
//use testList.Contains to see if value3 = 3
//use testList.Contains to see if value3 = 2 and value1 = "Value1 - 2"
}
}
Perché preoccuparsi di importare LINQ quando Trova, Trova Tutto ed Esiste sono già definiti per l'elenco? – bdukes
@bdukes Risposta ai commenti di Necro, semplicemente non l'avevamo notato prima :) Nelle versioni precedenti alla 3.5 usava l'operatore di uguaglianza degli oggetti per determinare l'uguaglianza. Potresti fornire il tuo, ma prima delle 3.5 era un dolore. Ma dal 3.5 hanno aggiunto la versione lambda in cui è possibile definire l'uguaglianza se necessario. Ho detto LINQ perché è stata la prima cosa che ho pensato che corrispondesse alla sua richiesta, ma penso che tu abbia ragione, se hai già una lista, dovresti usare gli operatori integrati. Se ha qualcos'altro che non ha quelli, LINQ sarebbe adatto al conto. – CubanX
Sì, ci sono altri modi. Ma +1 per ricordarmi che posso usare: 'SiteList.Where (s => s.GLCode == glcode);' nel mio codice. :-) – cbmeeks