من الناحية الفنية ، في بيئة ASP ، هناك ثلاث طرق رئيسية لقراءة وإدارة نص XML:
قم بإنشاء كائن MSXML وتحميل مستند XML في DOM ؛
استخدم التضمين من جانب الخادم (تشمل جانب الخادم ، SSI) ؛
تمامًا مثل الوصول إلى الملفات النصية الأخرى ، استخدم FileSystemObject للوصول إلى مستندات XML ؛
الطريقة الرابعة هي إنشاء جزيرة بيانات مدمجة على العميل وشرح المحتوى ذي الصلة لاحقًا.
1. استخدم دوم
من أجل استخدام DOM في رمز ASP ، تحتاج إلى إنشاء مثيل من Microsoft XML Parser ، الذي تم إنشاء مثيل له مثل أي مكون COM آخر ، إضافة بضعة أسطر من التعليمات البرمجية القياسية إلى بداية الصفحة. يقوم هذا الرمز بإنشاء مثيل محلل ، ويقوم بتحميل مستند XML إلى DOM ، ويقوم بتعيين عنصر الجذر (أي عنصر المستند) على العقدة الحالية.
قم بإدخال معالج XML
تعيين OBJXML = server.createBject ("Microsoft.xmldom")
تحميل مستند XML
objxml.load (server.mappath ("myData.xml")
اضبط عنصر المستند
تعيين objRootelement = objxml.documentElement
قبل تحميل مستند XML ، يجب تنفيذ الخطوة الرابعة ، والتي تتمثل في تعيين خاصية ValiathOnparse على True ، مما يضمن أن المستند المحمّل هو مستند XML صالح. هذا يمكن أن يتجنب المشاكل التي تأتي لاحقًا:
قم بإدخال معالج XML
تعيين OBJXML = server.createBject ("Microsoft.xmldom")
يجب أن تحقق العمليات الوثيقة
OBJXML.ValidateOnParse = صحيح
تحميل مستند XML
objxml.load (server.mappath ("myData.xml")
اضبط عنصر المستند
تعيين objRootelement = objxml.documentElement
أخيرًا ، هناك خطوة اختيارية ، تظهر أيضًا قبل التحميل. يتطلب تحميل الملف بشكل متزامن:
objxml.async = خطأ
هذا يقول أنه عند تحميل ملف كبير والتحقق منه يستغرق بعض الوقت. بديل آخر هو تجاهل هذه الخطوة والسماح بالتحميل غير المتزامن ، وهي الحالة الافتراضية ، بمجرد اكتمال خطوات التهيئة هذه ، يتم تحميل مستند XML وجاهز للمعالجة. جميع الميزات المهمة لـ DOM قابلة للتكوين.
بالطبع ، تمامًا مثل أي كائن com ، بعد استخدامه ، تذكر أن يدمره:
تعيين OBJXML = لا شيء
2. التضمين من جانب الخادم
يمكن استخدام التضمين من جانب الخادم لإدخال رمز مستند XML في صفحات ASP.
3. أمثلة على استخدام رمز ASP لمعالجة XML
<html>
<head>
</head>
<body>
<٪
Dim SourceFile ، المصدر ، الجذور ، htmlcode
SourceFile = request.servervariables ("Appl_Physical_Path") و "XML/Contacts.xml"
set source = server.createObject ("microsoft.xmldom")
source.async = false
Source.Load SourceFile
تعيين rootelement = source.documentElement
htmlcode = htmlcode & "<font size = 4 face = verdana>"
htmlcode = htmlcode & rootelement.childnodes (0) .Text
htmlcode = htmlcode & "</font> <p> </p> <font size = 3 face = verdana> <i>"
htmlcode = htmlcode & rootelement.childnodes (0) .Text
htmlcode = htmlcode & "</i> </font> <p> </p> <font size = 3 face = verdana>"
htmlcode = htmlcode & rootelement.childnodes (0) .Text
htmlcode = htmlcode & "</font> <p> </p>"
استجابة. write (htmlcode)