Cómo hacer controles de trabajo AJAX Control Toolkit en el proyecto actualizado de VS2008 a VS2010
Pregunta
I tenía un proyecto de trabajo en VS2008 / .Net 3,5 usando los controles de la caja de herramientas de control de ajax (que se dirige a .Net 3.5).
He actualizado el proyecto en VS2010 Beta 2. Elegí para apuntar .Net 4.0 para que pudiera tomar ventaja de enrutamiento de Web Forms (que trabaja).
Cuando una página con unas cargas ModalPopupExtender, sin embargo, tengo errores, "Error de sintaxis" hace referencia a un URI como:
{} Localhost /WebResource.axd?d=-sR5kj2yKK777ENh8pDLSA2&t=633960551687981257.
A continuación, la página se carga de forma incorrecta debido a que los archivos JavaScript necesarios no se pudo cargar.
He intentado descargar el nuevo kit de herramientas de control de ajax.codeplex.com y hacer referencia a la AjaxControlToolkit.dll dentro, la limpieza de archivos temporales de marco 2.0 y 4.0, pero no había ninguna diferencia.
a continuación, consulte este poste depuración sobre aún más el error. Cuando descifrado las peticiones a WebResource.axd, mostraron caminos que parecían yay:
- s | WebForms.js
- ZSystem.Web, 4.0.0.0,, b03f5f7f11d50a3a | WebUIValidation.js |
Así tuberías delimitado referencias a los archivos parecen haber sido construidos de forma incorrecta. Parece poco probable que alguien tendría ninguna idea de qué hacer acerca de esto, pero qué diablos ...
Solución
añadir
RouteTable.Routes.Ignore ( "js *");
a RegisterRoutes en Global.ascx.cs
Otros consejos
Puede descargar el código fuente desde CodePlex y reconstruirlo para .NET 4.0 a través de VS 2010, pero no creo que va a hacer mucha ayuda.
Si desea utilizar enrutamiento que forma parte de .NET 3.5 (con SP1) lo que tiene que hacer es exlude * manipuladores .axd no se direccione.
Este es un ejemplo de código C # para lograr ese
RouteTable.Routes.Add(new Route("{resource}.axd/{*pathInfo}", new StopRoutingHandler()));