Das r.a.d.callback Control von Telerik wurde durch das neue r.a.d.ajax Control ersetzt. Um möglichst up-to-date zu bleiben sollte man seinen Code auf das neue Control umstellen. Dies ist aber nicht zwingend erforderlich. r.a.d.ajax und r.a.d.callback laufen problemlos nebeneinander, so dass auch ein langsamer oder gar kein Umstieg möglich ist.
Hier ein paar Dinge, die mir beim Umstieg aufgefallen sind:
Keine Callbackcontrols wie CallbackButton, CallbackLinkbutton, usw. mehr
Durch den AjaxManager kann man jedes beliebige Control in ein Ajaxfähiges Control verwandeln und das ganze lässt sich sogar bequem über Visual Studio in einem Designer definieren.
Einfache Callbacks
Einfache Callbacks ruft man (via Javascript) mit dem AjaxManager über die Funktion AjaxRequest(arguments) auf.
ControlsToUpdate or not to update???
Bei r.a.d.callback gab es mit der Eigenschaft ControlsToUpdate die Möglichkeit erst auf dem Server zu entscheiden, welche Controls auf der Seite aktualisiert werden sollen. Diese Möglichkeit habe ich bei r.a.d.ajax zu beginn gänzlich vermisst. Sie ist aber noch vorhanden, wenn auch ein wenig versteckt. Die Lösung lautet RadAjaxManager.AjaxSettings.AddAjaxSettings(<ajaxified control>, <updated control>, <loading panel>).
Kleiner Trick: Wenn man ein Callback direkt aufruft, ohne dass ein Control dieses Event verursacht hat, gibt man als <ajaxified control> einfach den AjaxManager selbst an. Das funktioniert am unproblematischsten.
Mehrere ResponseScripts
Ärgerlich fand ich immer, dass man mehrere Skripte, die nach einem Callback ausgeführt werden sollten nur über eine String-Eigenschaft definieren konnte. Musste man in verschiedenen Funktionen solche Skripte definieren, dann ging dass nur über einen '+' Operator. In der neuen Version gibt es eine Collection in die man über Add beliebig(?) viele Skriptaufrufe hinzufügen kann.
Fazit
Das war so mein erster Eindruck. Mal sehen, ob ich bei der weiteren Arbeit mit dem Control noch ein paar nennenswerte Unterschiede finde. Wenn ja werde ich sie hier posten. Allgemein kann ich sagen, dass das Control wesentlich ausgereifter ist, als r.a.d.callback. Meine Skripte laufen flüssiger und das Programmiermodell hat sich deutlich vereinfacht. Erwähnenswert ist auch die Tatsache, dass r.a.d.ajax problemlos neben Atlas laufen soll. Jeder der nicht schon unmengen an Code für r.a.d.callback geschrieben hat, kann ich einen Umstieg nur empfehlen.