نظرة عامة حول القيم الحرفية XML
XML قيمة حرفية يسمح لك بدمج XML مباشرة في Visual Basic تعليماتك البرمجية. بناء جملة XML الحرفي يمثل كائنات مكون LINQ to XML وهو يشبه بناء جملة XML 1.0. وهذا ما يسهّل عملية إنشاء عناصر XML والمستندات برمجياً لأن التعليمات البرمجية الخاصة بك تحتوي على نفس بنية كـ XML النهائية.
Visual Basic القيم الحرفية XML في الكائنات برمجيًا مكون LINQ to XML. مكون LINQ to XML يوفر طراز كائن بسيطة لإنشاء وتحليل معالجة XML والطراز هذا بدمج بشكل جيد مع مجموعة ميزات Language-Integrated Query (LINQ). لمزيد من المعلومات، راجع XElement.
يمكنك أن تضمّن Visual Basic التعبير في XML قيمة حرفية. في وقت التشغيل، يقوم تطبيقك بإنشاء كائن الخاص بك مكون LINQ to XML لكل قيمة حرفية ، للمشاركة قيم التعبيرات المضمنة. يتيح هذا إمكانية تحديد المحتوى الديناميكي داخل XML قيمة حرفية. لمزيد من المعلومات، راجع التعبيرات المضمنة في XML.
للحصول على معلومات أكثر راجع حول الاختلافات بين بناء جمل XML قيمة حرفية وبناء XML 1.0القيم الحرفية XML و مواصفات XML 1.0.
قيم حرفية بسيطة
يمكنك إنشاء مكون LINQ to XML كائن في الخاص بك Visual Basic تعليمات برمجية وذلك بالكتابة أو اللصق في XML صالح. إرجاع عنصر XML قيمة حرفية لكائن XElement . للمزيد من المعلومات، راجع الـقيمة ألحرفية لعنصر XML والقيم الحرفية XML و مواصفات XML 1.0. يقوم المثال التالي بإنشاء عنصر XML يحتوي على عناصر تابعة متعددة.
Dim contact1 As XElement =
<contact>
<name>Patrick Hines</name>
<phone type="home">206-555-0144</phone>
<phone type="work">425-555-0145</phone>
</contact>
يمكنك إنشاء مستند XML عن طريق بدءاً XML قيمة حرفية <?xml version="1.0"?>، كما هو موضح في المثال التالي. إرجاع عنصر XML قيمة حرفية لكائن XDocument . لمزيد من المعلومات، راجع قيمة حرفية لمستند XML.
Dim contactDoc As XDocument =
<?xml version="1.0"?>
<contact>
<name>Patrick Hines</name>
<phone type="home">206-555-0144</phone>
<phone type="work">425-555-0145</phone>
</contact>
ملاحظة
بناء جملة قيمة حرفية XML في Visual Basic غير متطابقة إلى بناء الجملة في مواصفات XML 1.0. لمزيد من المعلومات، راجع القيم الحرفية XML و مواصفات XML 1.0.
إعلام بمتابعة خط
XML قيمة حرفية أن تمتد عبر عدة أسطر بدون استخدام حرف متابعة السطر (تسلسل Enter الزر الزر أسفل السطر (_) مسافة). هذا يسهّل إلى يقارن القيم الحرفية XML في تعليمات برمجية مع مستندات XML.
يعامل المحول البرمجي حرف متابعة السطر كجزء من XML قيمة حرفية. لذلك، يجب استخدام تسلسل Enter الزر الزر أسفل السطر (_) مسافة عند انتمائه مكون LINQ to XML كائن.
ومع ذلك، تحتاج حرف متابعة السطر إذا كان تعبير متعدد الأسطر في تعبير مضمنة. لمزيد من المعلومات، راجع التعبيرات المضمنة في XML.
تضمين استعلامات في القيم الحرفية XML
يمكنك استخدام استعلام في تعبير مضمنة. عند القيام بذلك، العناصر التي تم إرجاعها بواسطة استعلام تتم تمت الإضافة عنصر XML. يتيح هذا إمكانية إضافة ديناميكي محتوى مثل نتيجة استعلام مستخدم إلى حرفي XML.
على سبيل المثال، تستخدم تعليمات برمجية التالية استعلام مضمن إلى إنشاء عناصر XML من الأعضاء phoneNumbers2 صفيف ثم قم بإضافة هذه العناصر مثل توابع contact2.
Public Class XmlSamples
Public Sub Main()
' Initialize the objects.
Dim phoneNumbers2 As Phone() = {
New Phone("home", "206-555-0144"),
New Phone("work", "425-555-0145")}
' Convert the data contained in phoneNumbers2 to XML.
Dim contact2 =
<contact>
<name>Patrick Hines</name>
<%= From p In phoneNumbers2
Select <phone type=<%= p.Type %>><%= p.Number %></phone>
%>
</contact>
Console.WriteLine(contact2)
End Sub
End Class
Class Phone
Public Type As String
Public Number As String
Public Sub New(ByVal t As String, ByVal n As String)
Type = t
Number = n
End Sub
End Class
كيفية إنشاء المحول البرمجي كائنات من القيم الحرفية XML
The Visual Basic برنامج التحويل البرمجي يترجم القيم الحرفية XML في المكالمات في المساوي لها مكون LINQ to XML المُنشئات لبناء مكون LINQ to XML كائن. على سبيل المثال، Visual Basic سيقوم المترجم بترجمة التالية تعليمات برمجية المثال في استدعاء XProcessingInstruction يستدعي المُنشئ للحصول على تعليمة إصدار XML في XElement مُنشئ للحصول <contact>, <name>، و <phone> عناصر و استدعاءات XAttribute مُنشئ للحصول type سمة. وعلى وجه الخصوص، المعطى السمات في نموذج التالي Visual Basic سيؤدي استدعاء برنامج التحويل البرمجي XAttribute(XName, Object) مُنشئ مرتين. سيتم تمرير أول القيمة type للحصول name المعلمة وقيمة home للحصول value معلمة. سيتم أيضاً تمرير الثاني القيمة type للحصول name معلمة ولكن القيمة work للحصول value معلمة.
Dim contactDoc As XDocument =
<?xml version="1.0"?>
<contact>
<name>Patrick Hines</name>
<phone type="home">206-555-0144</phone>
<phone type="work">425-555-0145</phone>
</contact>