UpdatePanels по-прежнему выполняют полную обратную передачу страницы, а затем просто обновляют любой контент внутри панели. Отсюда и ваше замедление.
Что касается использования AJAX для ускорения процесса, вам нужно использовать прямые вызовы AJAX для запроса только тех данных, которые вам нужны. Вы можете сделать это с ASP.NET AJAX.
В обработчике события page_load зарегистрируйте свой AJAX. (VB.NET)
Ajax.Utility.RegisterTypeForAJAX(GetType(ThisPageClass))
Затем создайте функцию, которая будет доступна AJAX, например:
<Ajax.AjaxMethod()> _
Public Function GetNewRows() As String
''//do stuff
Return jsonObj
End Function
Затем на стороне клиента вы можете назвать это так:
ThisPageClass.GetNewRows(someCallbackFunction);
function someCallbackFunction(result) {
var json = ParseJSON(result.value);
for(var i=0; i<json.length; i++) {
// do whatever
}
}
Вы просто должны закрыть отверстия!