Мы используем версию 3.0.20229.0 asp.net ajaxControlTookKit (до .net 3.5 sp1). Мне было интересно, могу ли я объединить наши пользовательские файлы javascript в ScriptResource.axd, который создает controlTookKit. Я нашел эту статью (http://blogs.msdn.com/delay/archive/2007/06/11/script-combining-made-easy-overview-of-the-ajax-control-toolkit-s-toolkitscriptmanager.aspx), который говорит мне, что мне нужно добавить атрибут scriptCombine в файл сборки. Мы запускаем проект WebSite, как я могу добавить этот атрибут?
объединить сценарии в наборе инструментов asp.net ajax
Ответы (1)
Вам нужно будет добавить сценарии в качестве ресурсов в отдельную библиотеку и ссылаться на них оттуда, чтобы воспользоваться преимуществами объединителя сценариев.
Изменить, чтобы обеспечить обзор
Создайте новый проект библиотеки классов (назовите его, например, «CombinedScipts»), удалите класс по умолчанию.
Добавьте ссылку на AjaxControlToolkit и System.Web.
Добавьте файлы JS в проект и измените их свойство "Действие сборки" на "Встроенный ресурс".
Откройте файл AssemblyInfo.cs.
Добавьте следующее:
// You need to add a web resource call for each JS file in the project
[assembly: WebResource("CombinedScripts.Console.js", "text/javascript")]
[assembly: WebResource("CombinedScripts.Utilities.js", "text/javascript")]
// Not setting IncludeScripts or ExcludeScripts marks all scripts as
// combinable.
[assembly: AjaxControlToolkit.ScriptCombine()]
Добавьте эту библиотеку в качестве ссылки в проект вашего веб-сайта.
Затем в своем проекте вы можете добавить следующее между тегами ToolkitScriptManager:
<Scripts>
<asp:ScriptReference name="CombinedScripts.Console.js"
assembly="CombinedScripts" />
<asp:ScriptReference name="CombinedScripts.Utilities.js"
assembly="CombinedScripts" />
</Scripts>
Не забывая убедиться, что для свойства CombineScripts ToolkitScriptManager установлено значение true.
Затем это приводит к одному вызову чего-то вроде: /pageName.aspx?_TSM_HiddenField_=ToolkitScriptManager1_HiddenField&[...]
В котором будут ваши комбинированные сценарии с разделителями комментариев, такими как:
//START CombinedScripts.Console.js
[...]
//END CombinedScripts.Console.js
//START CombinedScripts.Utilities.js
[...]
//END CombinedScripts.Utilities.js