AjaxControlToolkit 7.0123 разрывает проект веб-приложения VS2012
у меня есть существующее веб-приложение VS2012, которое работает нормально, пока я не добавил в последний AjaxControlToolkit (7.0123). Первоначально я обнаружил, что установка нарушила поведение UpdatePanel-тогда как до того, как я смог обновить страницу после асинхронной обратной передачи без повторения операции, я обнаружил, что после установки обновление повторит предыдущую операцию (я думаю, что обратная передача больше не была асинхронной).
Я тогда заметил, что некоторое время назад я прокомментировал ряд файлов JavaScript по умолчанию, которые добавляются в новый ASP.NET приложение Web Forms, поэтому я попытался добавить их обратно. Это привело к исключению:
'MsAjaxBundle' не является допустимым именем сценария. Имя должно заканчиваться на '.js'.
затем я попытался заменить значение по умолчанию <asp:ScriptManager .../>
с <ajaxControlToolkit:ToolkitScriptManager .../>
это привело к новому исключению
не удалось загрузить файл или сборку 'System.Веб-или один из его зависимости. Система не может найти указанный файл.
для здравомыслия я затем создал свежий ASP.NET приложение веб-форм (VS2012, обновление 2) и запустил его. Никакая ошибка. Используя "nuget", я добавил AjaxControlToolkit v7.0123 (последняя версия). Запустите приложение снова, и я снова получаю исходное исключение:
'MsAjaxBundle' не является допустимым именем сценария. Имя должно заканчиваться на '.js'.
еще раз, я заменено <asp:ScriptManager .../>
с <ajaxControlToolkit:ToolkitScriptManager .../>
и снова это приводит к
не удалось загрузить файл или сборку 'System.Web ' или один из его зависимости. Система не может найти указанный файл.
может кто-нибудь пролить свет на то, что еще мне нужно сделать, чтобы решить эту? Я не могу найти документацию, чтобы сказать, что что-то нужно изменить вручную при добавлении инструментария.
спасибо,
3 ответов
ответ найден на http://stephenwalther.com/archive/2012/09/20/september-2012-release-of-the-ajax-control-toolkit.aspx (всегда сразу после публикации вопроса)
- замена
<asp:ScriptManager .../>
с<ajaxControlToolkit:ToolkitScriptManager .../>
правильно - необходимо удалить ссылку на MsAjaxBundle
- необходимо удалить сборку= " система.Web " из ссылок на скрипт
это исправляет исключения (как в новом проекте и оригинальный.)
это, однако, не решает проблему с UpdatePanel больше не отправлять обратно асинхронно. Я поставлю этот вопрос как новый.
Если вы используете апрельский выпуск 2013 Ajax Control Toolkit, см. Последнее сообщение в блоге Стивена Вальтера:
http://stephenwalther.com/archive/2013/04/30/april-2013-release-of-the-ajax-control-toolkit.aspx
мне не хватало новой сети.параметры конфигурации, позволяющие элементу управления AjaxFileUpload работать в новом выпуске
<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>
когда вы видите это "MsAjaxBundle" не является допустимым именем сценария. Имя должно заканчиваться на '.js'."
лучшее, что вы можете сделать, это:
- перейдите на мастер сайта (дважды щелкните по нему )
- Поиск "MsAjaxBundle " или""
- закомментируйте эту строку, например.
- сохранить и скомпилировать программу и запустить его
слава Богу работает теперь