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>();
Comment vérifier si l'élément de pricePublicList
contient une certaine valeur. Pour être plus précis, je veux vérifier s'il existe pricePublicModel.Size == 200
? Aussi, si cet élément existe, comment savoir de quel élément il s'agit?
EDIT Si Dictionary est plus approprié pour cela, je pourrais utiliser Dictionary, mais j'aurais besoin de savoir comment :)
findIndex
retournera–1
. Documentation: msdn.microsoft.com/es-es/library/x1xzf2ca(v=vs.110).aspxla source
how to know which one is it
Vous pouvez utiliser le existe
la source
C'est assez facile à faire avec LINQ:
la source
match
valeur renvoyée peut être modifiée (c'est l'PricePublicModel
objet qui était dans la liste).match.Size = 300;
ouforeach(var item in pricePublicList.Where(p => p.Size == 200)) item.Size = 300;
. Je ne l'utiliserais pas moi-même comme une seule ligne, cependant.Vous ne devez pas vraiment LINQ pour cela car
List<T>
fournit une méthode qui fait exactement ce que vous voulez:Find
.Exemple de code:
la source
la source