Martin Speiser: ASP & XML

Beitrag lesen

Hi Stefan,

Gibt es die Möglichkeit die Funktion load mit einem String aus der Datenbank zu füttern ?

Mit load geht das nicht, aber dafür ist die Funktion loadXML vorhanden. Allerdings nimmt loadXML nur einen String, der in UTF-16 oder UCS-2 kodiert ist. Da dein XML aus der Datenbank kommt, sollte es eigentlich keine Schwierigkeit sein.

Du kannst es übrigens noch ein bißchen beschleunigen, wenn du statt der ProgID Microsoft.XMLDOM die ProgID MSXML2.DOMDocument.4.0 benutzt, und das Property NewParser auf True setzt. Also so:

Dim xmlDoc
  set xmlDoc = Server.CreateObject( "MSXML2.DOMDocument.4.0" )
  xmlDoc.setProperty "NewParser", True
  xmlDoc.async = false

Dadurch wird MSXML4 statt MSXML3 oder MSXML 2.6 benutzt, und der schnellere Parser eingesetzt. Zusätzlicher Effekt ist, dass du nicht mehr auf W3C-konforme XSL-Transformationen umschalten musst, die alten, auf einem Working Draft basierenden XSLPattern sind nicht mehr enthalten. Eventuell musst du ein bißchen deine XSL-Dateien ändern, aber das solltest du eh machen. XSLPattern sollte man nicht mehr verwenden, und wird in Zukunft nicht mehr unterstützt.

Achja, MSXML4 muss natürlich auch auf deinem Server installiert sein.

Gruß,
Martin