Cómo mostrar el árbol de control completo cada devolución de datos

Recibo un error Viewstate muy estándar en un escenario muy específico en uno de los proyectos actuales.

Sys.WebForms.PageRequestManagerServerErrorException: no se pudo cargar viewstate. El árbol de control en el que se carga viewstate debe coincidir con el árbol de control que se usó para guardar viewstate durante la solicitud anterior. Por ejemplo, al agregar controles dinámicamente, los controles agregados durante una devolución posterior deben coincidir con el tipo y la posición de los controles agregados durante la solicitud inicial.

Mi problema es que este es un diseñador de formularios dirigido por el cliente, y todos los controles son dinámicos, también hay mucha lógica de omisión en el formulario, por lo que la mayoría de los controles no están visibles en un momento dado, y parece ser la alternancia de esta visibilidad que está causando el problema. Sin embargo, solo en un patrón muy específico. Como no tengo suerte al volver a crear el problema en una forma más simple, o rastrear el control específico que no se está volviendo a representar correctamente. Luego pensé que una forma segura de resolver esto sería mostrar todo el árbol de control en la parte inferior de la página en cada devolución de datos. luego puedo comparar el árbol antes y después del error y ver qué está cambiando. Pero no estoy seguro de cómo hacer esto.

preguntado el 22 de mayo de 12 a las 16:05

1 Respuestas

Lo acabo de encontrar, el atributo Trace en la etiqueta de la página es lo que necesitaba.

<%@ Page Trace="true" %>

http://msdn.microsoft.com/en-US/library/kthye016%28v=vs.80%29

contestado el 22 de mayo de 12 a las 16:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.