public class PricePublicModel
{
public PricePublicModel() { }
public int PriceGroupID { get; set; }
public double Size { get; set; }
public double Size2 { get; set; }
public int[] PrintType { get; set; }
public double[] Price { get; set; }
}
List<PricePublicModel> pricePublicList = new List<PricePublicModel>();
Jak sprawdzić, czy element pricePublicList
zawiera określoną wartość. Mówiąc dokładniej, chcę sprawdzić, czy istnieje pricePublicModel.Size == 200
? Ponadto, jeśli ten element istnieje, skąd wiedzieć, który to jest?
EDYTUJ Jeśli słownik jest do tego bardziej odpowiedni, mógłbym użyć słownika, ale musiałbym wiedzieć, jak :)
findIndex
zwróci–1
. Dokumentacja: msdn.microsoft.com/es-es/library/x1xzf2ca(v=vs.110).aspxźródło
how to know which one is it
Możesz użyć istniejącego
źródło
Za pomocą LINQ jest to całkiem łatwe:
źródło
match
wartość można modyfikować (jest toPricePublicModel
obiekt znajdujący się na liście).match.Size = 300;
lubforeach(var item in pricePublicList.Where(p => p.Size == 200)) item.Size = 300;
. Sam nie użyłbym tego jako jednolinijki.W rzeczywistości nie potrzebują LINQ do tego, ponieważ
List<T>
dostarcza sposobu, który robi dokładnie to, co chcesz:Find
.Przykładowy kod:
źródło
źródło