2008-11-05 15 views
5

He estado leyendo muchas publicaciones de blog que ofrecen la causa y la solución del error "Operación abortada" en IE. Recientemente construí una aplicación que está recibiendo este error para algunos de los usuarios, algunas veces.¿Por qué ASP.NET causa el error "Operación cancelada" en IE7?

Déjenme explicar en detalle.

La aplicación es .NET 2.0, ASP .NET y la aplicación web C# integrada en VS 2008. Utiliza los controles web de ComponentOne junto con los controles estándar de Visual Studio.

En una de las páginas web, les dejo a los usuarios escribir entradas en un conjunto de controles de entrada de ComponentOne Web que luego se agregan a una colección. La colección está vinculada al repetidor y cada vez que se realiza una nueva entrada en la colección, se repite el repetidor. Si los usuarios eliminan la entrada del repetidor (usando el botón de comando), la colección se actualiza y se recupera a repetidor.

Cuando la aplicación se envió a los usuarios finales para su prueba, algunos de ellos se quejaron de que estaban obteniendo el error "Operación abortada" al ver o trabajar en esta página. En algún momento, se producirá en el momento en que el usuario intente cargar la página y en otras cuando agregue/suelte elementos a la colección.

Esos usuarios tienen IE7 sin complementos de terceros que no sean Adobe PDF ni la barra de herramientas de Google. El error no ocurre en Firefox o Google Chrome. Tampoco ocurre en IE8 Beta 2.

Cuando yo o mi compañero desarrollador intentamos replicar el error usando IE7 en nuestras máquinas, simplemente no podemos hacer eso. No importa lo que intentemos, no obtenemos ese error.

También probé IE6 y no recibo el error.

La versión IE7 es la misma en todas partes.

No estoy seguro de cómo solucionar este problema. Todas las publicaciones del blog, la publicación del foro hablan de JavaScript y alteran los elementos del cuerpo, pero no estoy seguro de cómo esto se aplica a mí, y aunque lo haga, ¿por qué el comportamiento es diferente en dos navegadores IE7?

Cualquier sugerencia/ayuda es bienvenida.

Respuesta

6

Las complejidades de su colección y enlaces han introducido una condición de carrera .

El error operación abortada es un error oscuro de IE, que se produce cuando se agrega el DOM antes de que la página termine de cargarse.

El error abortada Operación

se refieren a esta pregunta: ¿ What is the Operation Aborted error in Internet Explorer?

Esto no es intrínsecamente un problema de asp.net, pero, en su caso, asp.net está fallando para controlar el orden de ejecución, debido a la forma en que ha escrito el enlace de datos. En otras palabras, dependiendo del orden en que se carguen y ejecuten los recursos (qué corriente no se controla), la condición existe.

Por cierto, puede ser más difícil de reproducir la condición en su entorno de desarrollo si usted tiene algunos de estos recursos en caché en la parte delantera, o si se cargan más rápido (que está disponible en una red local), lo que explicaría por qué tiene problemas para ver el error.

0

Entiendo por qué podría ocurrir el error. Sin embargo, no me veo haciendo algo así. Mi repetidor no tiene habilitado ViewState y solo estoy haciendo una nueva vinculación usando la colección.

¿Cómo se corresponde un databind repetidor con la adición dinámica de algo?

+0

El marco es responsable. Está ejecutando una forma en la que existe esta condición, dependiendo de cuándo se carguen los recursos. – keparo

Cuestiones relacionadas