Logo ar.removalsclassifieds.com

الفرق بين XmlDocument و XPathDocument (مع الجدول)

جدول المحتويات:

Anonim

يعد التعامل مع ملفات XML أمرًا شائعًا نظرًا لأن لها تطبيقًا واسعًا يتضمن تنسيق ملف في Microsoft Office ومستندات Google ، وتبادل البيانات بين الشركات ، وما إلى ذلك. يعد كل من XmlDocument و XPathDocument طرقًا مختلفة أو بالأحرى مساحات أسماء للتعامل مع ملفات XML. لكن لديهم نهجًا مختلفًا ويختلفون أيضًا من ميزة إلى أخرى. يعتمد استخدام XmlDocument و XPathDocument على عدد الوظائف التي يحتاجها المستخدم لتنفيذها مع مستند XML معين.

XmlDocument مقابل XPathDocument

يتمثل الاختلاف بين XmlDocument و XPathDocument في أن XmlDocument لديه إمكانيات القراءة والكتابة بينما يمكن لـ XPathDocument قراءة الملفات بتنسيق XML فقط. نظرًا لأن XPathDocument لا يحتوي على أي إمكانيات كتابة ، فهو أخف حجمًا ولكنه يفتقر إلى مرونة XmlDocument حيث يمكن إجراء المزيد من الوظائف في الأخير.

يتم تعريف XmlDocument على أنه فئة في الذاكرة تمثل مستند XML. يمكن للمستخدمين استخدام هذه الفئة لتنفيذ العديد من الوظائف مثل تحميل ، والتحقق من صحة ، وإضافة ، وتحرير ، ووضع XML في مستند. يقوم XmlDocument بتنفيذ W3C XML DOM (نموذج كائن المستند) المستوى 1 والمستوى 2 الأساسي. يتيح XmlDocument تحميل XML في DOM متبوعًا بإجراء التعديلات اللازمة.

توفر فئة XPathDocument أيضًا تمثيلاً في الذاكرة لمستند XML ، ولكن بخلاف XmlDocument ، لا تسمح بأي قدرات للكتابة. يوفر XPathDocument ميزة للقراءة فقط باستخدام نموذج بيانات XPath. ينطبق XPathDocument على كل من.NET Core و.NET Framework.

جدول المقارنة بين XmlDocument و XPathDocument

معلمات المقارنة

XmlDocument

مستند XPath

يقترب يحتوي XmlDocument على نهج موجه للكائنات. يتكون هذا من إنشاء وربط كائن بملف معين. XPathDocument لديه نهج البيانات الموجهة.
قراءة و كتابة يمكن لـ XmlDocument أداء وظائف القراءة والكتابة إلى جانب إضافة عقد جديدة وحذف العقد الموجودة. يمكن لـ XPathDocument أداء وظيفة القراءة فقط وليس لديه خيار تعديل مستند XML.
المرونة نظرًا لأن XmlDocument يمكنه أداء العديد من الوظائف مثل قراءة السمات وكتابتها وحذفها وإضافتها وتعديلها ، فهي مرنة جدًا. XPathDocument ليس مرنًا مثل XmlDocument حيث أن السابق يمكنه قراءة ملفات XML فقط.
إنشاء الوثيقة XmlDocument قادر على إنشاء مستند من البداية ثم إجراء تغييرات عليه. لا يمكن لـ XPathDocument إنشاء مستندات لذا يجب على المستخدم التأكد من وجود الملف قبل الوصول إليه.
سرعة لا يفضل استخدام XmlDocument عند فتح الملفات الكبيرة للقراءة فقط لأنه يبطئ العملية. نظرًا لبساطته ، يمكن لـ XPathDocument فتح الملفات الكبيرة وقراءتها بسرعة.

ما هو XmlDocument؟

التمثيل في الذاكرة لمستند XML الذي يمكنه قراءة سمات الملف وكتابتها وتعديلها بالإضافة إلى فئة XmlDocument. نظرًا لأنه يؤدي العديد من الوظائف ، يفضل بشكل عام XmlDocument على XpathDocument لجميع المثيلات والأغراض العامة. لكن XmlDocument يبطئ عملية فتح ملفات كبيرة جدًا وهو أحد عيوبها.

عند فتح ملف XML في DOM ، إذا كان موقع الملف المحدد الذي يشير إليه المستخدم فارغًا ، فإنه يقوم بإنشاء XML جديد وتحميله. هذه واحدة من أكبر مزايا XmlDocument أنه يمكنه إنشاء ملف جديد على الفور وإجراء تغييرات عليه.

يسمح XmlDocument للمستخدم بالتنقل عبر العقد المختلفة للملف. يمكنه الوصول إلى كل من العقدة الأم والفرعية ويمكنه أيضًا التنقل للأمام والخلف عبر عقد الأشقاء. أثناء استخدام XmlDocument ، يتم استخدام سلسلة استعلام XPath للعثور على عقد واحد أو عدة عقد من البيانات.

بصرف النظر عن العثور على العقد المختلفة والوصول إليها من مستويات مختلفة ، يمكن لـ XmlDocument أيضًا إضافة العقد أو تحريرها. لإضافة عقد جديدة ، يتم استخدام طريقة CreateElement أو CreateNode ولحذف طريقة RemoveChild. يمكن أيضًا تغيير مواضع العقد وفقًا للملاءمة.

ما هو XPathDocument؟

تشتهر فئة XPathDocument بتمثيلها للقراءة فقط في الذاكرة لملفات XML. إنها فئة بسيطة للغاية ولا تؤدي وظائف كثيرة على الملفات أو العقد الخاصة بها. يمكن لـ XPathDocument قراءة الملفات الكبيرة بسرعة كبيرة ، وبالتالي عندما يحتاج المستخدم فقط إلى قراءة ملف XML ، يفضل XPathDocument على XmlDocument.

هناك العديد من المُنشئين لـ XPathDocument المستخدمة لأغراض مختلفة. على سبيل المثال ، يتم استخدام XPathDocument (Stream) لتهيئة مثيل جديد من هذه الفئة في كائن Stream. وبالمثل ، يقوم XPathDocument (String) أيضًا بتهيئة مثيل جديد من بيانات XML ولكن ليس على وجه التحديد في كائن Stream. بعض المنشئات الأخرى هي XPathDocument (TextReader) ، XPathDocument (XmlReader) ، إلخ.

في XPathDocument ، يتم استخدام أسلوب CreateNavigator () لتهيئة كائن XPathNavigator للقراءة فقط. هذا يقرأ من خلال جميع العقد الموجودة في XPathDocument. يتم استخدام طريقة يساوي (كائن) للتحقق مما إذا كان الكائن المحدد يساوي الكائن الحالي أم لا. هناك طرق أخرى في XPathDocument أيضًا والتي تعزز حتى وظائفه المحدودة.

الاختلافات الرئيسية بين XmlDocument و XPathDocument

استنتاج

يعد كل من XmlDocument و XPathDocument تمثيلات في الذاكرة لملفات XML. عند اختيار XmlDocument ، فهذا يعني أن هناك عدة وظائف مطلوبة لتعديل مستند XML. لأغراض القراءة فقط ، يفضل XPathDocument.

أثناء استخدام XPathDocument ، يجب أن يكون المستخدم يقظًا وأن يعطي عنوانًا صالحًا لملف XML. لأنه في حالة عدم وجود الملف ، لا يمكن لـ XPathDocument إنشاء خدش نماذج الملفات الفورية وتنفيذ التغييرات.

أيضًا ، إذا كان أحدهم يفتح ملف XML لأغراض القراءة فقط ، فيجب على المستخدم استخدام فئة XPathDocument. فئة XPathDocument قادرة على فتح ملفات أكبر بسرعة كبيرة مما يوفر الوقت بينما XmlDocument مناسب لجميع الأغراض الأخرى بخلاف قراءة الملفات الكبيرة جدا.

مراجع

الفرق بين XmlDocument و XPathDocument (مع الجدول)