¿Cómo optimizar este código?Eliminar foreach - C# código-optimización
ParentDoglist, ChildDoglistis - Ilist. dogListBox - Cuadro de lista
foreach (Dog ParentDog in ParentDoglist)
{
foreach (Dog ChildDog in ChildDoglist)
{
if(ParentDog.StatusID==ChildDog.StatusID)
dogListBox.Items.Add(new ListItem(ParentDog.Name, ParentDog.Key));
}
}
EDIT: ParentDogTypeList, DogTypeList fueron renombrados como ParentDoglist, ChildDoglist, donde ambos no están relacionados entre sí
if(ParentDog.Key==ChildDog.Key)
fue cambiado a
if(ParentDog.StatusID==ChildDog.StatusID)
Historia completa:
Necesito rellenar un menú desplegable que correspondería a una relación de Parent Child. Hay ciertos perros que pueden no tener ningún hijo y que se llamarían leafdog. Y también necesito para mostrar el número de perros en esa categoría en particular
DD se vería como
Parent1
Child11 (10)
Child12 (12)
Parent2
Child21 (23)
Child22 (20)
Leaf1 (20)
Leaf2 (34)
Así, el ParentDoglist traería todos los elementos secundarios y de la hoja junto con el conteo y ChildDogList tendría la ID de padre y hoja, por lo tanto, podría poblar el Niño respectivo con su Padre y enlazar la hoja directamente.
El padre, el hijo y el perro hoja se mantendrían en una tabla y se diferenciarían por el valor de estado y el recuento estaría en otra tabla.
Ningún padre tendría ningún recuento, hijo único y hoja tendrían recuento
esquema de la tabla:
¿Qué línea es lenta? –
¿DogTypeList es una lista de todos los tipos de perros y ParentDogTypeList es un subconjunto de tipos de perros? – gkrogers
@gkrogers Pl mira mi edición –