Una compra es una lista de pedidos y un pedido es un diccionario de partidas, así que como sacarlo de manera sencilla.
public List
{
get
{
List
ForEach(delegate(Pedido pedido) { partidas.AddRange(pedido); });
return partidas;
}
}
No sólo esto simplifico nuestro código, sino que lo hizo más seguro, encapsulando variables que no necesitaban ser de instancia.
Había otras soluciones, pero la más obvia era hacer algo como lo siguiente
List
public List
{
get
{
partidas = new List
ForEach(new Action
return partidas;
}
}
public void AddPartidas(Pedido pedido)
{
partidas.AddRange(pedido);
}
No solo el código es más largo, creamos un metodo extra muy sencillo que sólo se usa desde un lugar, sino que aparte y lo peor de todo, es que ahora cualquier metodo o propiedad de la clase puede usar la variable partidas, pensando que sirve para algo más que para regresarla a algún cliente de este objeto desde la propiedad Partidas.
No hay comentarios.:
Publicar un comentario