¿Es posible iterar la recopilación y mostrar solo la información del objeto filtrado mientras se depura en Visual Studio? Usaría la ventana Inmediato para eso, pero a pesar de que permite ejecutar métodos en objetos, parece que no permite ejecutar enunciados de bucle personalizados.Iterar objeto enumerable al depurar en Visual Studio
ejemplo más simple en ASP.NET:
this.Page.Validate();
if (!this.Page.IsValid())
{
// breakpoint here
}
¿Cómo podemos iterar Page.Validators
colección y encontrar los que son inválidos salida + su información en ese punto de ruptura? (esta no es la pregunta principal, es solo una muestra)
Si no es posible hacerlo de manera directa, ¿tiene alguna solución para esto? Soluciones alternativas que no implicarían la modificación del código, solo escribir código en la ventana Inmediato o alguna expresión de vigilancia.
Mientras que buscando en Google he encontrado sólo una solución temporal citado here (aunque no se pudo encontrar el original):
"Añadir un método de depuración de su código que hace algo como iterar a través de todos los objetos una colección. Entonces puede llamar a ese método de la ventana inmediata mientras que en el modo de depuración y enumerará varias cosas para usted. Piense en ello como un de línea de comandos-depurador-ayudante. puede escribir tantos de esos a tu gusto ".
Pero sigue siendo una solución. I imagen debería ser factible sin demasiada piratería y más importante aún sin modificar el código. Por supuesto, debería ser posible hacer algún tipo de transformaciones de colección en una declaración.
Y ceñidos a colecciones no genéricas. También la ventana Inmediato parece no aceptar expresiones lambda (se obtuvo un error cuando se intentó: "Expresión no puede contener expresiones lambda")
muy útil, gracias Jeff. – Kon
De nada. Me alegra que hayas encontrado esto útil. –