Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
XML Değişmez Değerleri , XML'i bir kaynaktan okumayı ve yeni bir XML biçimine dönüştürmeyi kolaylaştırır. Dönüştürülecek içeriği almak veya var olan bir belgedeki içeriği yeni bir XML biçimine değiştirmek için LINQ sorgularından yararlanabilirsiniz.
Bu konudaki örnek, bir XML kaynak belgesindeki içeriği tarayıcıda görüntülenecek HTML'ye dönüştürür.
Uyarı
Bilgisayarınız, aşağıdaki yönergelerde bazı Visual Studio kullanıcı arabirimi öğeleri için farklı adlar veya konumlar gösterebilir. Sahip olduğunuz Visual Studio sürümü ve kullandığınız ayarlar bu öğeleri belirler. Daha fazla bilgi için bkz. IDE'yi Kişiselleştirme.
XML belgesini dönüştürmek için
Visual Studio'da Konsol Uygulaması proje şablonunda yeni bir Visual Basic projesi oluşturun.
Visual Basic kodunu değiştirmek için projede oluşturulan Module1.vb dosyasına çift tıklayın. Aşağıdaki kodu
Sub MainModule1modülüne ekleyin. Bu kod, kaynak XML belgesini bir XDocument nesne olarak oluşturur.Dim catalog = <?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>Kaynak XML belgesini oluşturmak için koddan sonra aşağıdaki kodu ekleyerek nesneden tüm
<Book>öğeleri alın ve bir HTML belgesine dönüştürün. Öğe listesi<Book>, dönüştürülen HTML'yi içeren bir nesne koleksiyonu XElement döndüren bir LINQ sorgusu kullanılarak oluşturulur. Ekli ifadeleri kullanarak kaynak belgedeki değerleri yeni XML biçiminde yerleştirebilirsiniz.HTML belgesi, Save yöntemi kullanılarak bir dosyaya yazılır.
Dim htmlOutput = <html> <body> <%= From book In catalog.<Catalog>.<Book> Select <div> <h1><%= book.<Title>.Value %></h1> <h3><%= "By " & book.<Author>.Value %></h3> <h3><%= "Price = " & book.<Price>.Value %></h3> <h2>Description</h2> <%= TransformDescription(book.<Description>(0)) %> <hr/> </div> %> </body> </html> htmlOutput.Save("BookDescription.html")Sub MainModule1sayısından sonra, bir<Description>düğümünü belirtilen HTML biçimine dönüştürmek için yeni birSubmetot ekleyin. Bu yöntem, önceki adımda kod tarafından çağrılır ve öğelerin biçimini<Description>korumak için kullanılır.Bu yöntem, öğesinin
<Description>alt öğelerini HTML ile değiştirir.ReplaceWithyöntemi, alt öğelerin konumunu korumak için kullanılır. öğesinin<Description>dönüştürülmüş içeriği bir HTML paragrafı (<p>) öğesine eklenir. Nodes özelliği,<Description>öğesinin dönüştürülmüş içeriğini getirmek için kullanılır. Bu, dönüştürülen içeriğe alt öğelerin eklenmesini sağlar.Sub MainsonrasınaModule1için aşağıdaki kodu ekleyin.Public Function TransformDescription(ByVal desc As XElement) As XElement ' Replace <technology> elements with <b>. Dim content = (From element In desc...<technology>).ToList() If content.Count > 0 Then For i = 0 To content.Count - 1 content(i).ReplaceWith(<b><%= content(i).Value %></b>) Next End If ' Replace <audience> elements with <i>. content = (From element In desc...<audience>).ToList() If content.Count > 0 Then For i = 0 To content.Count - 1 content(i).ReplaceWith(<i><%= content(i).Value %></i>) Next End If ' Return the updated contents of the <Description> element. Return <p><%= desc.Nodes %></p> End FunctionDeğişikliklerinizi kaydedin.
Kodu çalıştırmak için F5 tuşuna basın. Sonuçta kaydedilen belge aşağıdakine benzer:
<?xml version="1.0"?> <html> <body> <div> <h1>XML Developer's Guide</h1> <h3>By Garghentini, Davide</h3> <h3>Price = 44.95</h3> <h2>Description</h2> <p> An in-depth look at creating applications with <b>XML</b>. For <i>beginners</i> or <i>advanced</i> developers. </p> <hr /> </div> <div> <h1>Developing Applications with Visual Basic .NET</h1> <h3>By Spencer, Phil</h3> <h3>Price = 45.95</h3> <h2>Description</h2> <p> Get the expert insights, practical code samples, and best practices you need to advance your expertise with <b>Visual Basic .NET</b>. Learn how to create faster, more reliable applications based on professional, pragmatic guidance by today's top <i>developers</i>. </p> <hr /> </div> </body> </html>
Ayrıca bakınız
- XML Değişmez Değerleri
- Visual Basic'te XML'yi düzenleme
- XML
- Nasıl yapılır: Dosyadan, Dizeden veya Akıştan XML Yükleme
- LINQ
- Visual Basic'da LINQ'e
Giriş