كيفية القيام بما يلي: تعديل قيم XML الحرفية (Visual Basic)
Visual Basic توفر الطرق المناسبة gتعديل القيم الحرفية في XML. يمكنك إضافة أو حذف عناصر و سمات كما يمكنك أيضاً استبدال عنصر موجود بعنصر XML جديد. يوفر هذا الموضوع العديد من الأمثلة عن كيفية تعديل قيمة XML حرفية موجود.
لتعديل قيمة القيمة الحرفية لـ XML
لتعديل القيمة الحرفية في XML و الحصول على مرجع إلى XML الحرفية وتعيين Value خاصية إلى القيمة المطلوبة.
يلي التعليمات البرمجية المثال بتحديث القيمة كل عناصر <price>في مستند XML.
For Each book In From element In catalog.<Catalog>.<Book> book.<Price>.Value = (book.<Price>.Value * 1.05).ToString("#.00") Next
يُظهر المصدر نموذج XML التالي وتعديلها XML من هذا تعليمات برمجية المثال.
Source XML: <?xml version="1.0"?> <Catalog> <Book id="bk101"> <Author>Garghentini, Davide</Author> <Title>XML Developer's Guide</Title> <Price>44.95</Price> </Book> <Book id="bk331"> <Author>Spencer, Phil</Author> <Title>Developing Applications with Visual Basic .NET</Title> <Price>45.95</Price> </Book> </Catalog> Modified XML: <?xml version="1.0"?> <Catalog> <Book id="bk101"> <Author>Garghentini, Davide</Author> <Title>XML Developer's Guide</Title> <Price>47.20</Price> </Book> <Book id="bk331"> <Author>Spencer, Phil</Author> <Title>Developing Applications with Visual Basic .NET</Title> <Price>48.25</Price> </Book> </Catalog>
ملاحظة
الخاصية Value تشير إلى أول عنصر XML في المجموعة. إذا كان هناك عنصر واحد أو أكثر له نفس الاسم في مجموعة إعداد Value تؤثر خاصية أول عنصر في المجموعة.
لإضافة سمة إلى قيمة XML حرفية
لإضافة سمة إلى قيمة XML حرفية, أولاً الحصول على مرجع إلى قيمة XML حرفية. ثم يمكنك إضافة سمة عن طريق إضافة خاصية محور سمة جديد XML. يمكنك أيضاً إضافة كائن جديد XAttribute إلى قيمة حرفية باستخدام XML أسلوب Add. المثال التالي كلاهما الخيارات.
Dim newAttribute = "editorEmail" Dim editorID = "someone@example.com" For Each book In From element In catalog.<Catalog>.<Book> ' Add an attribute by using an XML attribute axis property. book.@genre = "Computer" ' Add an attribute to the Attributes collection. book.Add(New XAttribute(newAttribute, editorID)) Next
يُظهر المصدر نموذج XML التالي وتعديلها XML من هذا تعليمات برمجية المثال.
Source XML: <?xml version="1.0"?> <Catalog> <Book id="bk101" > <Author>Garghentini, Davide</Author> <Title>XML Developer's Guide</Title> <Price>44.95</Price> </Book> <Book id="bk331"> <Author>Spencer, Phil</Author> <Title>Developing Applications with Visual Basic .NET</Title> <Price>45.95</Price> </Book> </Catalog> Modified XML: <?xml version="1.0"?> <Catalog> <Book id="bk101" genre="Computer" editorEmail="someone@example.com"> <Author>Garghentini, Davide</Author> <Title>XML Developer's Guide</Title> <Price>44.95</Price> </Book> <Book id="bk331" genre="Computer" editorEmail="someone@example.com"> <Author>Spencer, Phil</Author> <Title>Developing Applications with Visual Basic .NET</Title> <Price>45.95</Price> </Book> </Catalog>
لمزيد من المعلومات حول خصائص محور سمة XML راجع خاصية المحور بسمة XML.
لإضافة سمة إلى قيمة XML حرفية
لإضافة عنصر إلى قيمة XML حرفية, أولاً حاول الحصول على مرجع إلى قيمة XML حرفية. قم بإضافة جديدة XElement كائن كـ sub-element آخر عنصر باستخدام أسلوب Add. يمكنك إضافة كائن جديد XElement كـ sub-عنصر أول باستخدام أسلوب AddFirst.
لإضافة عنصر جديد في الموقع محدد نسبة إلى أخرى sub-عناصر أول الحصول على مرجع إلى sub-element متجاورة. قم بإضافة كائن جديدXElement قبل sub-عنصر المجاورة عن طريق استخدام اسلوب AddBeforeSelf . قم بإضافة كائن جديدXElement قبل sub-عنصر المجاورة عن طريق استخدام اسلوب AddAfterSelf .
يوضح المثال التالي أمثلة على كل من هذه التقنيات.
Dim vbBook = From book In catalog.<Catalog>.<Book> Where book.<Title>.Value = "Developing Applications with Visual Basic .NET" vbBook(0).AddFirst(<Publisher>Microsoft Press</Publisher>) vbBook(0).Add(<PublishDate>2005-2-14</PublishDate>) vbBook(0).AddAfterSelf(<Book id="bk999"></Book>) vbBook(0).AddBeforeSelf(<Book id="bk000"></Book>)
يُظهر المصدر نموذج XML التالي وتعديلها XML من هذا تعليمات برمجية المثال.
Source XML: <?xml version="1.0"?> <Catalog> <Book id="bk101" > <Author>Garghentini, Davide</Author> <Title>XML Developer's Guide</Title> <Price>44.95</Price> </Book> <Book id="bk331"> <Author>Spencer, Phil</Author> <Title>Developing Applications with Visual Basic .NET</Title> <Price>45.95</Price> </Book> </Catalog> Modified XML: <?xml version="1.0"?> <Catalog> <Book id="bk101" > <Author>Garghentini, Davide</Author> <Title>XML Developer's Guide</Title> <Price>44.95</Price> </Book> <Book id="bk000"></Book> <Book id="bk331"> <Publisher>Microsoft Press</Publisher> <Author>Spencer, Phil</Author> <Title>Developing Applications with Visual Basic .NET</Title> <Price>45.95</Price> <PublishDate>2005-2-14</PublishDate> </Book> <Book id="bk999"></Book> </Catalog>
لإزالة عنصر أو سمة من XML قيمة حرفية
لإزالة عنصر أو سمة من قيمة XML قيمة حرفية ، الحصول على مرجع إلى عنصر أو سمة واستدعاء أسلوب Remove , كما هو موضح في المثال التالي.
For Each book In From element In catalog.<Catalog>.<Book> book.Attributes("genre").Remove() Next For Each book In From element In catalog.<Catalog>.<Book> Where element.@id = "bk999" book.Remove() Next
يُظهر المصدر نموذج XML التالي وتعديلها XML من هذا تعليمات برمجية المثال.
Source XML: <?xml version="1.0"?> <Catalog> <Book id="bk101" genre="Computer" editorEmail="someone@example.com"> <Author>Garghentini, Davide</Author> <Title>XML Developer's Guide</Title> <Price>44.95</Price> </Book> <Book id="bk000"></Book> <Book id="bk331" genre="Computer" editorEmail="someone@example.com"> <Author>Spencer, Phil</Author> <Title>Developing Applications with Visual Basic .NET</Title> <Price>45.95</Price> </Book> <Book id="bk999"></Book> </Catalog> Modified XML: <?xml version="1.0"?> <Catalog> <Book id="bk101" editorEmail="someone@example.com"> <Author>Garghentini, Davide</Author> <Title>XML Developer's Guide</Title> <Price>44.95</Price> </Book> <Book id="bk000"></Book> <Book id="bk331" editorEmail="someone@example.com"> <Author>Spencer, Phil</Author> <Title>Developing Applications with Visual Basic .NET</Title> <Price>45.95</Price> </Book> </Catalog>
لإزالة كل العناصر أو السمات من قيمة XML حرفية ، الحصول على مرجع إلى قيمة XML حرفية واستدعاء أسلوب RemoveAll.
لتعديل حرفي XML
لتغيير اسم عنصر XML أولاً الحصول على مرجع إلى العنصر. قم بإنشاء جديدة كائن XElement الاسم جديد ويتم تمرير الجديدة الكائن XElement إلى الأسلوب ReplaceWith موجود كائن XElement .
إذا كان العنصر الذي يتم استبدال sub-elements يجب أن يتم الاحتفاظ بتعيين القيمة جديد XElement الكائن إلى Nodes خصائص العنصر الموجود. سيؤدي هذا إلى تعيين القيمة عنصر جديد إلى XML الداخلي لعنصر موجود. وإلا، يمكنك تعيين القيمة عنصر جديد إلى خصائص Value العنصر الموجود.
يلي تعليمات برمجية المثال يستبدل الكل عناصر <وصف>عنصر <abstract>. يتم الاحتفاظ محتوى العنصر <وصف>في العنصر <abstract>الجديد باستخدام الخاصية Nodes <وصف> كائن XElement .
For Each desc In From element In catalog.<Catalog>.<Book>.<Description> ' Replace and preserve inner XML. desc.ReplaceWith(<Abstract><%= desc.Nodes %></Abstract>) Next For Each price In From element In catalog.<Catalog>.<Book>.<Price> ' Replace with text value. price.ReplaceWith(<MSRP><%= price.Value %></MSRP>) Next
يُظهر المصدر نموذج XML التالي وتعديلها XML من هذا تعليمات برمجية المثال.
Source XML: <?xml version="1.0"?> <Catalog> <Book id="bk101"> <Author>Garghentini, Davide</Author> <Title>XML Developer's Guide</Title> <Price>44.95</Price> <Description> An in-depth look at creating applications with <technology>XML</technology>. For <audience>beginners</audience> or <audience>advanced</audience> developers. </Description> </Book> <Book id="bk331"> <Author>Spencer, Phil</Author> <Title>Developing Applications with Visual Basic .NET</Title> <Price>45.95</Price> <Description> Get the expert insights, practical code samples, and best practices you need to advance your expertise with <technology>Visual Basic .NET</technology>. Learn how to create faster, more reliable applications based on professional, pragmatic guidance by today's top <audience>developers</audience>. </Description> </Book> </Catalog> Modified XML: <?xml version="1.0"?> <Catalog> <Book id="bk101"> <Author>Garghentini, Davide</Author> <Title>XML Developer's Guide</Title> <MSRP>44.95</MSRP> <Abstract> An in-depth look at creating applications with <technology>XML</technology>. For <audience>beginners</audience> or <audience>advanced</audience> developers. </Abstract> </Book> <Book id="bk331"> <Author>Spencer, Phil</Author> <Title>Developing Applications with Visual Basic .NET</Title> <MSRP>45.95</MSRP> <Abstract> Get the expert insights, practical code samples, and best practices you need to advance your expertise with <technology>Visual Basic .NET</technology>. Learn how to create faster, more reliable applications based on professional, pragmatic guidance by today's top <audience>developers</audience>. </Abstract> </Book> </Catalog>
راجع أيضًا:
المهام
كيفية القيام بما يلي: تحميل XML من ملف أو سلسلة أو الدفق (Visual Basic)
المبادئ
مقدمة حول LINQ في Visual Basic