Если по какой-то причине вы решили использовать инструментарий MS Ajax вместо чего-то похожего на jQuery или YUI, есть некоторые вещи, которые вы можете сделать, чтобы значительно повысить производительность.
Включить кэширование в обработчике ресурсов скрипта
В вашем web.config:
<system.web.extensions>
<scripting>
<scriptResourceHandler enableCompression=“true” enableCaching=“true”/>
</scripting>
</system.web.extensions>
Сценарий объединения
Используйте функцию CompositeScript
в ASP.NET 3.5, чтобы объединить все сценарии MS Ajax в один файл, сохраняя HTTP-запросы (по умолчанию эта платформа генерирует тонну из них!).
<asp:ScriptManager ID=”ScriptManager″ runat=”server” EnablePartialRendering=”false” ScriptMode=”Release” LoadScriptsBeforeUI=”false”>
<CompositeScript>
<Scripts>
<asp:ScriptReference Name=”MicrosoftAjax.js” />
<asp:ScriptReference Name=”AjaxControlToolkit.Common.Common.js” Assembly=”AjaxControlToolkit, Version=3.0.20229.23352, Culture=neutral, PublicKeyToken=28f01b0e84b6d53e” />
.... etc
</Scripts>
</CompositeScript>
</asp:ScriptManager>
Чтобы выяснить, какие скрипты вызывает каждая ваша страница, вы можете использовать ScriptReferenceProfiler , доступный в Codeplex.
С точки зрения того, разумно ли использовать эту платформу, есть несколько вещей, которые следует учитывать.
Как уже упоминалось выше, ваше приложение общедоступно или для интрасети? Если он не обслуживается в Интернете, производительность не так важна.
Ваше приложение разработано с использованием веб-форм или MVC?
Если вы используете веб-формы, инструментарий MS Ajax достаточно гармонично работает с этой моделью, особенно если вы в целом разрабатываете стиль перетаскивания RAD.
Однако jQuery является гораздо лучшим партнером для MVC, и Microsoft до некоторой степени признала это самостоятельно, поскольку они будут связывать jQuery (и поддержку intellisense) с будущими версиями Visual Studio.
MS Ajax, безусловно, гораздо более тяжелый фреймворк, чем многие альтернативы. Другая критика, не связанная с производительностью, заключается в том, что это что-то вроде черного ящика, и его сложно отладить.