none
ASP.NET 4: XML + XSL => Website? RRS feed

  • Frage

  • Sehr geehrte Damen und Herren,

    bereits bestehende ASP-Seiten laden eigenständig per AJAX-Technologie die Daten als XML-Document und die Darstellung dieser Daten XSL-Document. Beides wird auf dem Client mit einem XSLT-Prozessor verarbeitet und in ein <div>-Tag geschrieben und somit angezeigt. Alles funktioniert - ist aber "hand"-codiert. Unterstützt .NET dieses Vorgehen irdendwie, so daß ich den bestehenden Code durch besseren ablösen kann?

    Als Neuling in ASP.NET ist mir das Framwork manchmal zu transparent. Es geht mir hier darum, daß die Daten erst auf dem Client "zusammengebaut" werden. Das serverseitige Bereitstellen der Daten ist bis auf das SQL-Statement so einfach, da brauche ich nicht weiter nachdenken.

    Mit freundlichem Gruß!

    Samstag, 26. Juni 2010 06:06

Antworten

  • bereits bestehende ASP-Seiten laden eigenständig per AJAX-Technologie die Daten als XML-Document und die Darstellung dieser Daten XSL-Document. Beides wird auf dem Client mit einem XSLT-Prozessor verarbeitet und in ein <div>-Tag geschrieben und somit angezeigt. Alles funktioniert - ist aber "hand"-codiert. Unterstützt .NET dieses Vorgehen irdendwie, so daß ich den bestehenden Code durch besseren ablösen kann?

    Ehrlich gesagt hab ich nicht verstanden, was genau Du eigentlich machen willst. Weillst Du jetzt client- oder serverseitig arbeiten?

    Wenn letzteres, siehe http://msdn.microsoft.com/de-de/library/system.xml.xsl.xslcompiledtransform.aspx

    Das sollte eigentlich das bieten, was Du brauchst (denke ich mal :)

     


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community
    Dienstag, 29. Juni 2010 08:53
    Moderator

Alle Antworten

  • Hallo

    asp.net unterstützt ajax, es gibt zahlreiche Controls und ein server- sowie clientseitiges API: http://www.asp.net/ajaxlibrary/act.ashx

    Meines Erachtens geht die Tendenz dazu - pro Technologie auf den Spezialisten zu setzen und das wäre jquery. Lässt sich gut mit asp.net einsetzen: http://jquery.com/

    es gibt auch noch zahlreiche andere ajax-Frameworks.

    Wenn Du bisher alles selber implementiert hast, wird es wohl nicht ganz einfach, das durch ein Standard-Framework zu ersetzen.

    Ob eine Migration mit dem verbundenen Aufwand Sinn macht musst Du selber entscheiden. Für ein kommendes Projekt würde ich von Anfang an auf ein ajax-Framework setzen und keine ajax-Basis-Features selber implementieren.

    Der Einsatz eines ajax-Frameworks bringt aus meiner Sicht den Hauptvorteil, dass die Sachen in zahlreichen Browsern geprüft wurden und funktionieren. Immer wieder verwendete Kernfunktionalität ist vorhanden und kann einfach verwendet werden. Für die meisten Spezialwünsche gibts bereits Ansätze oder Lösungen in Plugins.

    LG

    Montag, 28. Juni 2010 08:18
  • Hallo,

     

    vielen Dank für die Antwort, die mir allerdings nicht besonders weiterhilft. Ich lade sowohl die dynamischen Daten (XML) als auch die Vorschrift zum Darstellen als Liste (XSL) und erzeuge mit Hilfe des XSLT-Processors auf dem Client den anzuzeigenden Inhalt. Was ich benötigen wäre - falls es das nicht schon als eigenständiges Control gibt - die Funktionalität für das Herunterladen der beiden Dateien und dann einen Wrapper um den XSLT-Processor. Dieser arbeitet in den verschiedenen Browsern verschieden - sonst würde ich mir über eine Umstellung wenige Gedanken machen.

    MfG

    Montag, 28. Juni 2010 11:29
  • bereits bestehende ASP-Seiten laden eigenständig per AJAX-Technologie die Daten als XML-Document und die Darstellung dieser Daten XSL-Document. Beides wird auf dem Client mit einem XSLT-Prozessor verarbeitet und in ein <div>-Tag geschrieben und somit angezeigt. Alles funktioniert - ist aber "hand"-codiert. Unterstützt .NET dieses Vorgehen irdendwie, so daß ich den bestehenden Code durch besseren ablösen kann?

    Ehrlich gesagt hab ich nicht verstanden, was genau Du eigentlich machen willst. Weillst Du jetzt client- oder serverseitig arbeiten?

    Wenn letzteres, siehe http://msdn.microsoft.com/de-de/library/system.xml.xsl.xslcompiledtransform.aspx

    Das sollte eigentlich das bieten, was Du brauchst (denke ich mal :)

     


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community
    Dienstag, 29. Juni 2010 08:53
    Moderator
  • Ich führe das Rendering auf dem Client aus. Es wird nur eine rudimentäre Seite geladen, das Wesentliche wird wie folgt zur Anzeige gebracht:

    1. Laden der dynamischen Daten als XML-Datei

    2. Laden der Vorschrift zum Interpretieren der Daten als XSL-Datei.

    3. Umwandeln der Daten de XML-Datei mit Hilfe der XSL-Datei in anzeigbare Daten:

    (XML + XSL => anzeigbare Daten)

    4. Laden der anzeigbaren Daten in ein DIV-Tag.

    Das passiert alles auf dem Client und funktiniert hervorragend. Problem: Die Browser handhaben httprequest und Co. verschieden. Derzeit funktioniert es mit Safari, IE und Mozialla u.a., aber z.B nicht mit Chrome. Gäbe es Methoden, welche mir die oben genannte Funktionalität in Form eine .NET-Bibliothek bereitstellen, so versprteche ich mir, daß ich nicht bei jedem neuen Browser wieder etwas tun muß - höchstens etwas warten. :-)

     

     

    Mittwoch, 14. Juli 2010 11:16