Benutzerfreundliche URLs mit UrlRewritingNet.UrlRewrite
URLs in ASP.NET Anwendungen werden durch die Übergabe von Query-String Variablen häufig recht lang und schlecht lesbar. Benutzer können sich solche URLs kaum merken und auch von Suchmaschinen werden solche URLs meistens nicht indiziert.
Das Tool UrlRewritingNet.UrlRewrite schafft abhilfe. Es ersetzt schlecht lesbare URLs wie www.test.de/Page.aspx?PageId=12 z.B. durch www.test.de/Page/12. ASP.NET 2.0 Funktionalität wie Themes, Masterpages, etc. werden unterstützt.
Das Tool kann unter http://www.urlrewriting.net heruntergeladen werden. Die .dll wird ins bin Verzeichnis des eigenenn Projekts integriert. Die .xsd Datei irgendwo im Projekt abgelegt (sie ermöglicht die Intellisense-Unterstützung im Visual Studio). In der web.config werden die zu ersetzenden URLs angegeben. Details dazu finden sich in der umfangreichen Dokumentation, die mitgeliefert wird.
Tags:.NET, ASP.NET, URL-Rewriting, Visual StudioAjax.NET Professional
Eine dritte Möglichkeit zur Integration von AJAX Funktionalität in ASP.NET ist Ajax.NET Professional. Im Gegensatz zu Anthem.NET wird hier im Hintergrund kein kompletter Postback durchgeführt, sondern es können gezielt einzelne Methoden aufgerufen werden. Dies ermöglicht ASP.NET AJAX (Atlas) zwar ebenfalls, allerdings ist Ajax.NET Professional nicht so umfangreich und damit einfacher zu verstehen.
Einzelne Methoden können mit [AjaxMethod] markiert werden und dann Clientseitig aus einer Javascript-Methode aufgerufen werden. Bei diesem Aufruf wird der Methode auch der Name der JavaScript Callback-Methode übergeben, die im Anschluss an den aufgerufen wird und in der Regel die vom Server gelieferten Daten den einzelnen Controls zuweist.
Heruntergeladen werden kann das Framework hier. Dort finden sich auch Beispiele und eine umfangreiche Dokumentation.
Tags:.NET, AJAX, ASP.NET, JavaScript, Visual StudioAJAX Toolkit Anthem.NET
Das AJAX Toolkit Anthem.NET ist neben ASP.NET AJAX (siehe auch hier) eine weitere Möglichkeit, AJAX Funktionalität in ASP.NET Anwendungen zu integrieren.
Anthem.NET stellt eigene Controls zur Verfügung und arbeitet im Gegensatz zu ASP.NET AJAX nicht mit den regulären Web Controls. Diese Anthem Controls werden in der ASPX Seite anstelle der regulären Web Controls verwendet.
[code lang="csharp"]
<%@ Register TagPrefix="anthem" Namespace="Anthem" Assembly="Anthem" >
[/code]
Im C# Code muss dann nur noch der Click-Handler geschrieben werden:
[code lang="csharp"]
void button_Click(object sender, EventArgs e) {
label.Text = DateTime.Now.ToString();
label.UpdateAfterCallBack = true;
}
[/code]
Heruntergeladen werden kann Anthem.NET hier. Nach dem Entpacken wird die .dll einfach im eigenen Projekt referenziert. Das Zip.File enthält auch Beispiele und eine ausführliche Dokumentation zu jedem Control. Demos zu den einzelnen Controls finden sich auch auf der Projektwebsite.
Tags:.NET, AJAX, ASP.NET, JavaScript, Visual StudioASP.NET AJAX (Atlas)
Es gibt verschiedene Möglichkeiten, AJAX-Funktionalität zu ASP.NET Anwendungen hinzuzufügen. Die wohl am häufigsten genutzte Variante ist die Verwendung von Microsofts ASP.NET AJAX Framework, auch bekannt unter dem Namen Atlas (zwei andere Möglichkeiten werden hier und hier beschrieben). Die Installationsdatei lässt sich hier herunterladen. Bei der Installation wird der IIS für die Verwendung von ASP.NET AJAX konfiguriert und neue Templates in Visual Studio hinzugefügt.
Die Controls <asp:ScriptManager> und <asp:UpdatePanel> ermöglichen die Aktualisierung von Seiteninhalten ohne Postback der gesamten Seite. Das Control <asp:UdateProgress> informiert über die Update-Aktivität.
Standardmäßig löst ein Update einesPanels der Seite ein Update aller Panel aus. Um dies zu verhindern setzt man im Panel UpdateMode=”Conditional” und konfiguriert Trigger. Ein solches Panel wird dann nur noch aktualisiert, wenn einer seiner Trigger ausgelöst wird. Trigger fügt man über das<Triggers> tag eines UpdatePanels hinzu.
Folgende nützliche Links helfen bei der Implementation erster AJAX Projekte:
Tags:.NET, AJAX, ASP.NET, JavaScript, Visual Studio


