INFO: Roadmap untuk mengeksekusi XSLT transformasi di.Aplikasi NET

PENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah.

Klik disini untuk melihat versi Inggris dari artikel ini:313997
Artikel ini telah diarsipkan. Artikel ditawarkan dalam bentuk "apa adanya" dan tidak akan dapat diperbarui lagi.
RINGKASAN
Artikel ini memberikan peta jalan untuk memperkenalkan.NET Framework namespaces dan kelas yang dapat Anda gunakan untuk pemrograman melaksanakan ExtensibleTransformasi Stylesheet Language transformasi (XSLT) di.NET aplikasi. Peta jalan artikel menyediakan link ke informasi yang berguna, termasuk dokumentasi online, artikel Basis Pengetahuan Microsoft, dan kertas putih Microsoft, untuk membantu Anda belajar tentang teknologi atau produk Microsoft.

Artikel ini tidak adalah XSLT tutorial. Artikel ini mengasumsikan bahwa Anda sudah familiar dengan World Wide Web Consortium (W3C) XSLT standar dan memiliki pengalaman dengan menulis XSLT style sheet untuk mengubah XML data.

kembali ke atas

Sekilas pandang

XSLT adalah World Wide Web Consortium (W3C) standar untuk mengubah XML data. XSLT biasanya digunakan untuk menulis style sheet untuk mengubah data XML ke format lain seperti HTML, tetap panjang teks, teks dipisahkan koma atau format XML yang berbeda.

Dari sudut pandang pengembang, XSLT adalah bahasa pemrograman dengan sintaks yang kaya, berbasis XML yang menerapkan unsur-unsur yang sesuai dengan pemrograman konstruksi dan unsur-unsur untuk mengatasi umum transformasi persyaratan.

Lembar gaya XSLT sering menggunakan XML jalan bahasa (XPath) permintaan untuk menemukan node dalam dokumen XML sumber dan menerapkan XSLT template untuk mengubah node ini. Efisiensi XPath queries dalam lembar gaya XSLT sering mempengaruhi dan mempengaruhi kinerja transformasi yang menggunakannya.

Dari titik berdiri tingkat tinggi, prosesor XSLT adalah komponen perangkat lunak yang berlaku lembar gaya tertentu untuk dokumen XML sumber tertentu untuk mengeksekusi transformasi XSLT dan menghasilkan output yang diperlukan.

Hasil keluaran akhir yang menghasilkan transformasi XSLT yang biasanya dokumen hasil yang menyajikan data XML asli dalam format target tertentu.

kembali ke atas

Menulis kode.NET aplikasi untuk mengeksekusi XSLT transformasi

Berikut QuickStart tutorial dan artikel Basis Pengetahuan Microsoft menunjukkan bagaimana untuk menulis kode.NET aplikasi untuk menerapkan lembar gaya XSLT dokumen XML untuk melaksanakan transformasi dasar:
Bagaimana cara saya...Menerapkan transformasi XSL XML?
http://Samples.gotdotnet.com/Quickstart/Howto/doc/XML/TransformXml.aspx
307322 CARA: Menerapkan transformasi XSL dokumen XML dengan menggunakan Visual C#.NET
300929 CARA: Menerapkan transformasi XSL dari dokumen XML untuk dokumen XML dengan menggunakan Visual Basic.NET
kembali ke atas

System.Xml.Xsl Namespace

The XslTransform kelas di System.xml.XSL namespace menerapkan.NET Framework XSLT prosesor. Instance objek kelas ini dibuat dan digunakan untuk menjalankan XSLT transformasi di.NET aplikasi. Pelaksanaan prosesor XSLT di.NET Framework kompatibel dengan versi 1.0 Rekomendasi W3C Extensible Stylesheet Language Transformations.

The System.xml.XSL namespace juga menerapkan kelas berikut untuk mendukung XSLT pengecualian penanganan dan opsi lanjutan yang terkait dengan pelaksanaan transformasi XSLT dan XPath permintaan:
  • XsltArgumentList. Anda dapat menggunakan contoh-contoh objek kelas ini untuk memasok instance objek ekstensi dan nilai-nilai untuk XSLT parameter yang menentukan lembar gaya XSLT dan referensi.
  • XsltCompileException. Kelas ini menghasilkan.NET Framework pengecualian ketika kesalahan terjadi ketika Anda menyusun lembar gaya XSLT. Lembar gaya XSLT dikompilasi ketika Beban metode XslTransform objek dijalankan.
  • XsltException. Kelas ini menghasilkan.NET Framework pengecualian ketika kesalahan terjadi ketika Anda mengeksekusi XSLT transformasi.
  • XsltContext, IXsltContextFunction, dan IXsltContextVariable. Ini maju komponen digunakan untuk mengimplementasikan eksekusi query XPath kustom konteks ketika ada kebutuhan untuk menerapkan dan referensi user-defined functions dan variabel dalam XPath query yang dieksekusi.NET aplikasi dengan menggunakan XPathNavigator Document Object Model (DOM) kelas dan kelas.

    Untuk lebih mudah menerapkan fungsi ditetapkan pengguna dan variabel dalam XPath permintaan ekspresi yang termasuk dalam lembar gaya XSLT, Anda dapat menggunakan inline skrip blok, objek ekstensi, dan XSLT variabel atau parameter.

Fitur-fitur canggih XSLT

Bagian ini menjelaskan beberapa fitur XSLT.

kembali ke atas

Pipelining XSLT transformasi

Pipelining mengacu pada proses transformasi dokumen XML sumber dengan secara bertahap menerapkan lembar gaya XSLT dua atau lebih. Output yang menghasilkan setiap tahap menengah disediakan sebagai input ke fase berikutnya semua jalan melalui ke tahap akhir, yang kemudian menghasilkan output yang sesuai.

Metode ini sangat berguna ketika Anda harus bertahan output yang menghasilkan fase menengah untuk pengolahan tambahan yang tidak secara langsung terikat ke dalam proses transformasi.Untuk informasi tambahan tentang topik ini dan contoh kode yang menggambarkan penggunaan, klik nomor artikel di bawah ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
320847 CARA: Pipa XSLT transformasi di.Aplikasi NET
kembali ke atas

Parameterized XSLT transformasi

Ini adalah praktek XSLT umum untuk mendefinisikan dan menggunakan parameter dalam lembar gaya. Lembar gaya XSLT parameterized menggunakan elemen <xsl:param>untuk menentukan parameter yang direferensikan dalam XPath permintaan ekspresi selektif menemukan dan mengubah simpul dalam sumber XML data. Nilai parameter yang didefinisikan dapat keras-kode di style sheet atau disediakan pada jangka waktu. Praktek kedua secara dinamis menyediakan nilai input parameter untuk mengontrol proses transformasi merupakan penggunaan paling umum dari fitur ini.</xsl:param>

Dalam.NET aplikasi, XsltArgumentList objek digunakan untuk memasok nilai parameter XSLT pada waktu eksekusi. The AddParam metode ini digunakan untuk menambahkan pasangan nama-nilai yang mewakili parameter yang didefinisikan dalam style sheet dan nilai kepada XsltArgumentList objek. The XsltArgumentList objek kemudian diberikan sebagai parameter ketika menjalankan Mengubah metode XslTransform objek yang digunakan untuk menjalankan transformasi.

The GetParam dan RemoveParam metode yang digunakan untuk mengakses dan menghapus parameter individu yang ditambahkan ke XsltArgumentList objek.Untuk informasi tambahan tentang cara menjalankan parameterized XSLT transformasi di.NET aplikasi, klik nomor artikel di bawah ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
321704 CARA: Jalankan Parameterized Extensible Stylesheet Language Transformations di.Aplikasi NET
kembali ke atas

Inline skrip blok

Inline script fungsi adalah salah satu pilihan yang dapat Anda gunakan untuk melaksanakan fungsi ditetapkan pengguna dan sub prosedur yang direferensikan dalam XPath permintaan ekspresi yang digunakan dalam lembar gaya XSLT. Kemampuan untuk menyertakan inline skrip blok di lembar gaya XSLT adalah ekstensi W3C.

Dalam.NET Framework, subrutin dan fungsi kustom inline adalah blok kode di <msxsl:script>di lembar gaya XSLT. Anda dapat menggunakan Microsoft Visual Studio.Bahasa pemrograman yang bersih seperti Microsoft Visual Basic.NET atau Microsoft Visual C#.NET untuk melaksanakan rutinitas ini.</msxsl:script>

Salah satu kelemahan yang berhubungan dengan menggunakan inline skrip blok adalah bahwa mereka membuat lembar gaya XSLT non-portabel. Teknologi, tag, dan semantik yang digunakan untuk menerapkan inline skrip blok adalah ekstensi khusus vendor yang spesifikasi W3C XSLT tidak membakukan.

Anda hanya dapat menggunakan lembar gaya XSLT yang mendefinisikan dan menggunakan inline skrip blok berhasil dalam transformasi yang dijalankan dengan menggunakan prosesor XSLT yang dapat menafsirkan semantik terkait dan mengintegrasikan dengan teknologi yang harus melaksanakan kode.

Dalam.NET Framework, berhasil Majelis yang dihasilkan dan dimuat secara implisit untuk mengeksekusi kode yang terdapat dalam inline <msxsl:script>skrip blok. Saat ini ada masalah yang diketahui dalam.NET Framework yang mencegah Majelis ini dari yang dengan benar diturunkan ketika proses transformasi selesai. Anomali ini dapat mengakibatkan peningkatan penggunaan memori jika terkena style sheet berulang kali dimuat untuk melaksanakan XSLT transformasi. Memori dirilis dirilis hanya ketika proses host daur ulang.</msxsl:script>Untuk informasi tambahan tentang masalah ini di.NET Framework, klik nomor artikel di bawah ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
316775 PRB: Tidak bisa membongkar Majelis yang Anda buat dan beban dengan menggunakan Script di XSLT
Untuk mengatasi masalah ini dalam Microsoft ASP.NET aplikasi, Anda dapat memuat terpengaruh style sheet hanya satu kali selama kehidupan aplikasi, cache terpengaruh style sheet (di ASP.NET cache), dan kemudian menggunakan kembali versi cache untuk transformasi setelah itu.

Dalam bentuk Windows dan aplikasi-aplikasi konsol, Anda dapat menggunakan global XslTransform instance objek untuk memuat terpengaruh style sheet ketika aplikasi dimulai dan untuk melaksanakan kemudian transformasi. Workarounds ini tidak berlaku ketika XSLT transformasi harus dijalankan dalam lingkungan stateless (misalnya, dengan tingkat menengah Enterprise Services komponen).

Microsoft menganjurkan agar Anda menggunakan objek ekstensi XSLT untuk melaksanakan fungsi ekstensi XPath kustom untuk bekerja di sekitar masalah ini.

kembali ke atas

XSLT ekstensi objek

Microsoft menyarankan Anda menggunakan objek ekstensi untuk menerapkan kustom subrutin dan fungsi yang direferensikan dalam XPath permintaan ekspresi yang digunakan dalam lembar gaya XSLT.

Anda dapat membuat.NET Framework dll untuk menerapkan dan menggunakan objek ekstensi ketika Anda menjalankan transformasi di.NET aplikasi. Kustom subrutin dan fungsi dilaksanakan dalam DLL, dan contoh objek komponen DLL disediakan sebagai parameter run-time dengan menggunakan XsltArgumentList objek ketika Anda menjalankan Mengubah metode XslTransform objek.

The AddExtensionObject metode XsltArgumentList kelas yang digunakan untuk menambahkan contoh objek ekstensi untuk XsltArgumentList objek. Anda dapat menggunakan Mendapatkan dan Hapus metode dari objek ekstensi untuk mengakses dan menghapus contoh objek ekstensi yang ditambahkan untuk XsltArgumentList objek.

Spesifikasi W3C XSLT alamat konsep dan penggunaan unsur-unsur ekstensi dan fungsi tanpa memperhatikan atau referensi ke teknologi dasar yang harus Anda gunakan untuk menerapkan mereka. Anda harus mendefinisikan dan menggunakan standar berbasis XML namespace awalan style sheet untuk referensi fungsi dan subrutin yang dilaksanakan dalam objek ekstensi. Vendor dapat memilih teknologi yang paling cocok untuk platform mereka untuk menangani aspek-aspek pelaksanaan objek ekstensi.Untuk informasi tambahan tentang konsep dan penggunaan benda-benda XSLT ekstensi di.NET Framework dan untuk langkah-langkah untuk membuat aplikasi end-to-end yang menunjukkan cara menggunakan objek ekstensi ketika Anda menjalankan XSLT transformasi di.NET aplikasi, klik nomor artikel di bawah ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
321702 CARA: Menggunakan objek ekstensi ketika Anda menjalankan Extensible Stylesheet Language Transformations dalam Visual Basic.Aplikasi NET
kembali ke atas

Pedoman-pedoman umum untuk menggunakan.NET Framework kelas untuk melaksanakan XSLT transformasi

  • The XPathDocument kelas sangat dioptimalkan untuk pengolahan XSLT dan XPath. Untuk kinerja optimal, selalu menggunakan XPathDocument objek untuk memasok sumber XML sementara Anda mengeksekusi XSLT transformasi.
  • Anda dapat cache dan menggunakan kembali XslTransform objek yang digunakan untuk memuat lembar gaya XSLT yang sering digunakan untuk mengeksekusi kemudian transformasi.
  • XSLT prosesor secara otomatis cache instance objek ekstensi yang digunakan dalam XSLT transformasi. Anda dapat cache dan menggunakan kembali XsltArgumentList benda-benda yang digunakan untuk memasok instance objek ekstensi untuk lembar gaya XSLT sering digunakan ketika Anda menjalankan kemudian transformasi. Ini adalah metode untuk cache ekstensi objek yang digunakan dalam XSLT transformasi di.NET Framework.
  • Lembar gaya XSLT yang menerapkan inline skrip blok hanya bisa dimuat satu kali dan di-cache. Anda harus menggunakan kembali cache XslTransform objek untuk kemudian transformasi. Anda dapat menggunakan praktek ini untuk mengatasi masalah manajemen memori yang dijelaskan pada artikel Basis Pengetahuan Microsoft Q316775 ketika Anda harus menggunakan inline script fungsi dalam lembar gaya.
  • Microsoft menganjurkan agar Anda menggunakan objek ekstensi untuk melaksanakan fungsi kustom yang direferensikan dalam XPath permintaan ekspresi yang digunakan dalam lembar gaya XSLT. Menerapkan kustom XsltContext, IXsltContextFunction, dan IXsltContextVariable kelas hanya ketika Anda harus menerapkan dan referensi perpanjangan custom fungsi dalam XPath permintaan ekspresi yang dieksekusi.NET aplikasi dengan menggunakan XPathNavigator dan DOM kelas.
  • Menerapkan pengecualian penanganan kode untuk menangani XsltCompileException, the XsltException, dan XmlException .NET Framework pengecualian kelas ketika Anda menulis kode untuk menjalankan XSLT transformasi. Kelas-kelas pengecualian ini memberikan informasi tentang XSLT khusus atau XML-spesifik masalah yang terjadi saat Anda mencoba untuk menjalankan XSLT transformasi. Selain itu, Microsoft menyarankan Anda menerapkan kode untuk menangani spesifik lainnya.NET Framework pengecualian dan bahwa Anda menerapkan generik System.Exception kelas, yang didasarkan pada fungsi lainnya, non-XSLT-terkait yang dilaksanakan di blok kode yang mengeksekusi XSLT transformasi.
kembali ke atas

Kinerja XSLT transformasi di.NET Framework

Untuk informasi tambahan tentang penyebab dan solusi untuk masalah kinerja yang dikenal ketika Anda menjalankan XSLT transformasi di.NET aplikasi, klik nomor artikel di bawah ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
325689 INFO: Kinerja XSLT transformasi di.NET Framework
kembali ke atas

Pemecahan Masalah

Jika Anda mengalami masalah atau jika Anda memiliki pertanyaan, Anda dapat merujuk keMSDN newsgroup di mana Anda dapat berbagi pengalaman dengan teman-teman Anda. Anda juga dapat menggunakan Basis Pengetahuan Microsoft di mana Anda dapat mencari artikel tentang isu-isu spesifik atau hubungi layanan dukungan produk Microsoft.
MSDN newsgroup
http://MSDN.Microsoft.com/newsgroups/

Mencari Basis Pengetahuan
http://support.Microsoft.com/Search

Layanan dukungan produk Microsoft
http://support.microsoft.com
kembali ke atas
REFERENSI
Untuk informasi tambahan % 1, klik nomor artikel 2% di bawah ini untuk melihat artikel % 2 pada Basis Pengetahuan Microsoft:
313651 INFO: Roadmap untuk XML di.NET Framework
back to the top
melaksanakan XPath queries.NET aplikasi

Peringatan: Artikel ini telah diterjemahkan secara otomatis

Properti

ID Artikel: 313997 - Tinjauan Terakhir: 12/07/2015 08:18:23 - Revisi: 2.0

Microsoft .NET Framework 1.1, Microsoft .NET Framework 1.0

  • kbnosurvey kbarchive kbarttyperoadmap kbinfo kbmt KB313997 KbMtid
Tanggapan