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>();
So überprüfen Sie, ob das Element von pricePublicList
einen bestimmten Wert enthält. Um genauer zu sein, möchte ich überprüfen, ob es existiert pricePublicModel.Size == 200
? Wenn dieses Element vorhanden ist, wie kann man dann wissen, welches es ist?
BEARBEITEN Wenn Dictionary dafür besser geeignet ist, könnte ich Dictionary verwenden, aber ich müsste wissen wie :)
findIndex
wird es zurückgegeben–1
. Dokumentation: msdn.microsoft.com/es-es/library/x1xzf2ca(v=vs.110).aspxquelle
how to know which one is it
Sie können die vorhandenen verwenden
quelle
Dies ist mit LINQ ziemlich einfach:
quelle
match
Wert kann geändert werden (es ist dasPricePublicModel
Objekt, das in der Liste enthalten war).match.Size = 300;
oderforeach(var item in pricePublicList.Where(p => p.Size == 200)) item.Size = 300;
. Ich würde es allerdings nicht als Einzeiler verwenden.Sie benötigen hierfür eigentlich kein LINQ, da es
List<T>
eine Methode bietet, die genau das tut, was Sie wollen :Find
.Beispielcode:
quelle
quelle