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>();
Cómo comprobar si el elemento de pricePublicListcontiene cierto valor. Para ser más preciso, quiero comprobar si existe pricePublicModel.Size == 200. Además, si este elemento existe, ¿cómo saber cuál es?
EDITAR Si el Diccionario es más adecuado para esto, entonces podría usar Diccionario, pero necesitaría saber cómo :)

findIndexregresará–1. Documentación: msdn.microsoft.com/es-es/library/x1xzf2ca(v=vs.110).aspxfuente
how to know which one is itPuedes usar el existe
fuente
Esto es bastante fácil de hacer usando LINQ:
fuente
matchvalor que se devuelve se puede modificar (es elPricePublicModelobjeto que estaba en la lista).match.Size = 300;oforeach(var item in pricePublicList.Where(p => p.Size == 200)) item.Size = 300;. Sin embargo, no lo usaría como una sola línea.En realidad no necesita LINQ para esto porque
List<T>proporciona un método que hace exactamente lo que quiere:Find.Código de ejemplo:
fuente
fuente