¿Cuál es el enfoque común para las aplicaciones de diseño, que confían fuertemente en la evaluación perezosa en C#
(LINQ
, IEnumerable
, IQueryable
, ...)?C# pregunta de la pereza
En este momento lo general intento de hacer todas las consultas tan vago como sea posible, utilizando yield return
y LINQ
consultas, pero en tiempo de ejecución de este por lo general podría conducir a "pereza" comportamiento, cuando cada consulta obtiene a obra desde su comienzo, obviamente, resulta en la degradación severa del rendimiento visual.
lo que suelo hacer significa poner ToList()
operadores de proyección algún lugar para almacenar en caché los datos, pero sospecho que este enfoque podría ser incorrecta.
¿Cuál es la manera apropiada/comunes para el diseño de este tipo de aplicaciones, desde el principio?
Holy moly! ¡Tengo una tonelada métrica de código que se ve casi idéntica a esto! :) –