2013-04-06 10 views
8

Ich habe eine bestehende VS2012 Web-Anwendung, die gut lief, bis ich in der neuesten AjaxControlToolkit (7.0123) hinzugefügt. Zu Beginn stellte ich fest, dass die Installation das UpdatePanel-Verhalten zerstörte - während ich zuvor eine Seite nach einem asynchronen Postback aktualisieren konnte, ohne den Vorgang zu wiederholen, stellte ich nach der Installation fest, dass die vorherige Operation wiederholt wurde war nicht mehr asynchron).AjaxControlToolkit 7.bricht VS2012 Web Application Projekt

Ich bemerkte dann, dass ich irgendwann in der Vergangenheit eine Reihe der Standard-JavaScript-Dateien auskommentiert hatte, die zu einer neuen ASP.NET Web Forms-Anwendung hinzugefügt wurden, so dass ich sie wieder hinzufügte eine Ausnahme:

'MsAjaxBundle' ist kein gültiger Skriptname. Der Name muss in '.js' enden.

Ich habe dann versucht, die Standard-Ersatz <asp:ScriptManager .../> mit <ajaxControlToolkit:ToolkitScriptManager .../> dies in einer neuen Ausnahme geführt

kann nicht Datei oder Assembly ‚System.Web‘ oder eines seiner Abhängigkeiten laden. Die angegebene Datei wurde vom System nicht gefunden.

Für die Vernunft habe ich dann eine neue ASP.NET Web Forms-Anwendung (VS2012, Update 2) erstellt und ausgeführt. Keine Fehler. Mit "nuget" habe ich dann das AjaxControlToolkit v7.(die neueste Version) hinzugefügt. Lief die Anwendung erneut und erhalte die ursprüngliche Ausnahme erneut:

'MsAjaxBundle' ist kein gültiger Skriptname. Der Name muss in '.js' enden.

Wieder einmal ersetzt ich <asp:ScriptManager .../> mit <ajaxControlToolkit:ToolkitScriptManager .../> und wieder führt dies zu

Konnte Datei oder Assembly ‚System.Web‘ oder eines seiner Abhängigkeiten nicht laden. Die angegebene Datei wurde vom System nicht gefunden.

Kann jemand etwas Licht auf was sonst noch tun, um dies zu beheben? Ich kann keine Dokumentation finden, die sagt, dass irgendetwas manuell geändert werden muss, wenn das Toolkit hinzugefügt wird.

Danke,

Antwort

12

Antwort auf http://stephenwalther.com/archive/2012/09/20/september-2012-release-of-the-ajax-control-toolkit.aspx gefunden (immer nur nach der Frage Entsendung huh)

  • Ersetzen <asp:ScriptManager .../> mit <ajaxControlToolkit:ToolkitScriptManager .../> korrekt
  • Bezug auf MsAjaxBundle
  • entfernen müssen entfernen müssen Assembly = "System.Web" aus den Skriptreferenzen

Dies behebt die Ausnahmen (sowohl im neuen Projekt als auch im Original).

Es behebt jedoch nicht das Problem mit dem UpdatePanel, das nicht mehr asynchron zurückgibt. Ich werde das als eine neue Frage aufwerfen.

2

Wenn Sie den April 2013 Veröffentlichung des Ajax Control Toolkit sehen Stephen Walther neuesten Blog-Post verwenden:

http://stephenwalther.com/archive/2013/04/30/april-2013-release-of-the-ajax-control-toolkit.aspx

ich die neuen web.config Einstellungen fehlte, dass die AjaxFileUpload Kontrolle erlauben zu arbeiten die neue Version

<configuration> 
    <system.web> 
    <compilation debug="true" targetFramework="4.5" /> 
    <httpRuntime targetFramework="4.5" maxRequestLength="42949672" /> 
    <httpHandlers> 
     <add verb="*" path="AjaxFileUploadHandler.axd" type="AjaxControlToolkit.AjaxFileUploadHandler, AjaxControlToolkit"/> 
    </httpHandlers> 
    </system.web> 
    <system.webServer> 
    <validation validateIntegratedModeConfiguration="false"/> 
    <handlers> 
     <add name="AjaxFileUploadHandler" verb="*" path="AjaxFileUploadHandler.axd" type="AjaxControlToolkit.AjaxFileUploadHandler, AjaxControlToolkit"/> 
    </handlers> 
    <security> 
     <requestFiltering> 
     <requestLimits maxAllowedContentLength="4294967295"/> 
     </requestFiltering> 
    </security> 
    </system.webServer> 
</configuration> 
0

Wenn Sie sehen, diese „‚MsAjaxBundle‘kein gültiger Skriptname ist. der Name in‘ js enden.“

Das Beste, was Sie tun können, ist:

  1. Gehen Sie auf die Website Master (Klicken Sie doppelt auf it)
  2. Suche nach "MsAjaxBundle" oder ""
  3. Kommentar dieser Zeile zB. <% ----%>
  4. speichern oder Ihr Programm zusammenstellen und dann laufen

Gott sei Dank jetzt arbeitet