ID Artikel: 311566 - Kajian Terakhir: 24 September 2011 - Revisi: 2.0

Bagaimana untuk membaca XML Data ke DataSet dengan menggunakan Visual C#.NET

Tips SistemThis article applies to a different operating system than the one you are using. Article content that may not be relevant to you is disabled.

Pada Halaman ini

Perbesar semua | Perkecil semua

RINGKASAN

Artikel ini menunjukkan bagaimana untuk membaca data Extensible Markup Language (XML) ke ADO.NET DataSet objek.

Persyaratan

Daftar berikut menguraikan fitur perangkat keras, perangkat lunak, jaringan infrastruktur, dan paket layanan yang Anda butuhkan:
  • Microsoft Windows 2000 Professional, Windows 2000 Server, Windows 2000 Advanced Server, atau Windows NT 4.0 Server
  • Microsoft Visual Studio.NET
Artikel ini mengasumsikan bahwa Anda sudah familiar dengan topik-topik berikut:
  • Visual Studio.NET
  • ADO.Dasar-dasar bersih dan sintaks
  • Dasar-dasar XML

Deskripsi teknik

Anda dapat menggunakan ReadXml metode untuk membaca skema XML dan data ke dalam DataSet. XML data dapat membaca langsung dari sebuah file, Streaming objek, XmlWriter objek, atau TextWriter objek.

Anda dapat menggunakan salah satu dari dua metode kelebihan beban ReadXml metode, tergantung pada kebutuhan Anda. Satu set empat kelebihan beban metode mengambil hanya satu parameter. Kedua set empat kelebihan beban metode mengambil (parameter tambahan)XmlReadMode) bersama dengan salah satu parameter dari set pertama.

Daftar berikut menguraikan set pertama metode yang kelebihan beban, yang mengambil satu parameter:
  • Kode untuk mengikuti menggunakan file tertentu untuk membaca skema XML dan data ke dalam DataSet:
    Overloads Public Sub ReadXml(String)
    					
  • Kode untuk mengikuti menggunakan tertentu TextReader untuk membaca skema XML dan data ke dalam DataSet. TextReader dirancang untuk input karakter.
    Overloads Public Sub ReadXml(TextReader)
    					
  • Kode untuk mengikuti menggunakan tertentu System.io.stream untuk membaca skema XML dan data ke dalam DataSet. The Streaming kelas ini dirancang untuk byte masukan dan keluaran.
    Overloads Public Sub ReadXml(Stream)
    					
  • Kode untuk mengikuti menggunakan tertentu XmlReader untuk membaca skema XML dan data ke dalam DataSet. Metode ini menyediakan cepat, non-cache, ke depan hanya akses ke XML data yang sesuai untuk World Wide Web Consortium (W3C) spesifikasi XML 1.0 dan namespaces dalam spesifikasi XML.
    Overloads Public Sub ReadXml(XmlReader)
    					
Daftar untuk mengikuti menguraikan set kedua metode kelebihan beban, yang mengambil XmlReadMode dengan salah satu parameter yang disebutkan di atas. The XmlReadMode Pencacahan menentukan bagaimana membaca XML data dan skema ke DataSet.
  • DiffGram. Membaca DiffGram, dan berlaku perubahan dari DiffGram untuk DataSet.
  • Fragmen. Membaca dokumen XML yang mengandung inline XML Data mengurangi (XDR) skema fragmen (seperti yang dihasilkan ketika Anda menjalankan FOR XML skema yang mencakup inline XDR skema terhadap contoh Microsoft SQL Server).
  • IgnoreSchema. Mengabaikan setiap skema inline dan membaca data ke yang ada DataSet skema.
  • InferSchema. Mengabaikan setiap skema inline, menyimpulkan skema dari data, dan banyak data. Jika DataSet sudah berisi skema, InferSchema meluas skema sekarang dengan menambahkan kolom ke meja yang ada dan dengan menambahkan tabel baru jika meja tidak ada.
  • ReadSchema. Membaca setiap skema inline, dan banyak data.
  • Auto. Default. Melakukan tindakan yang paling sesuai.

Membuat proyek dan menambahkan kode

Contoh ini menggunakan sebuah file bernama MySchema.xml. Untuk membuat MySchema.xml, ikuti langkah-langkah pada artikel Basis Pengetahuan Microsoft berikut:
309183  (http://support.microsoft.com/kb/309183/EN-US/ ) Bagaimana untuk bertahan ADO.NET DataSet sebagai XML dengan menggunakan Visual C#.NET
Contoh kode berikut menunjukkan cara menggunakan dua versi kelebihan beban sering digunakan ReadXml. Untuk contoh lain, lihat MSDN untuk individu yang berlebihan topik metode ini.
  1. Mulai Visual Studio.NET.
  2. Membuat proyek baru aplikasi Windows di Visual C#.NET. Form1 ditambahkan ke proyek secara default.
  3. Pastikan bahwa proyek Anda berisi referensi untuk System.data namespace, dan menambahkan referensi ke namespace ini jika tidak.
  4. Tempat dua Tombol kontrol dan salah satu DataGrid kontrol pada Form1. Perubahan Nama properti Button1 untuk btnReader, dan perubahan yang Teks properti untuk Pembaca.

    Perubahan Nama properti Button2 untuk btnFile, dan perubahan yang Teks properti untuk Berkas.
  5. Penggunaan menggunakan pernyataan di Sistem, System.data, dan System.data.SqlClient namespaces sehingga Anda tidak perlu memenuhi syarat Deklarasi di namespaces tersebut kemudian dalam kode Anda.
    using System;
    using System.Data;
    using System.Data.SqlClient;
    					
  6. Tambahkan kode berikut dalam event handler yang sesuai untuk tombol:
    private void btnReader_Click(object sender, System.EventArgs e)
    {
        string myXMLfile = @"C:\MySchema.xml";
        DataSet ds = new DataSet();
        // Create new FileStream with which to read the schema.
        System.IO.FileStream fsReadXml = new System.IO.FileStream 
            (myXMLfile, System.IO.FileMode.Open);
        try
        {
            ds.ReadXml(fsReadXml);
            dataGrid1.DataSource = ds;
            dataGrid1.DataMember = "Cust";
        }
        catch (Exception ex)
        {
    	MessageBox.Show(ex.ToString());
        }
        finally
        {
    	fsReadXml.Close();
        }
    }
    		
    private void btnFile_Click(object sender, System.EventArgs e)
    {
        string myXMLfile = "C:\\MySchema.xml";
        DataSet ds = new DataSet(); 
        try
        {
            ds.ReadXml(myXMLfile);
            dataGrid1.DataSource = ds;
            dataGrid1.DataMember = "Cust";
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.ToString());
        }
    }
    					
  7. Mengubah path ke file XML (MyXmlFile) yang sesuai untuk lingkungan Anda.
  8. Menyimpan proyek Anda. Pada Debug menu, klik Mulai untuk menjalankan proyek Anda.
  9. Klik salah satu tombol untuk membaca XML data dari file yang ditentukan. Perhatikan bahwa XML data muncul dalam grid.

Catatan tambahan

  • Untuk membaca hanya skema XML, Anda dapat menggunakan ReadXmlSchema metode.
  • Untuk mendapatkan hanya representasi XML data dalam DataSet Alih-alih bertahan itu ke sungai atau file, Anda dapat menggunakan GetXml metode.

REFERENSI

Untuk informasi tambahan, klik nomor artikel di bawah ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
309183  (http://support.microsoft.com/kb/309183/EN-US/ ) Bagaimana untuk bertahan ADO.NET DataSet sebagai XML dengan menggunakan Visual C#.NET
262450  (http://support.microsoft.com/kb/262450/EN-US/ ) Bagaimana contoh C++ ADO Recordset XML ketekunan
Untuk informasi lebih lanjut tentang ADO.NET objek dan sintaks, merujuk kepada Microsoft berikut.NET Framework Software Development Kit (SDK) atau dokumentasi MSDN Online:
Mengakses Data dengan ADO.NET
.aspx http://msdn2.Microsoft.com/en-us/library/e80y5yhx (vs.71) (http://msdn2.microsoft.com/en-us/library/e80y5yhx(vs.71).aspx)

Berlaku bagi:
  • Microsoft ADO.NET 1.1
  • Microsoft Visual C# .NET 2003 Standard Edition
  • Microsoft Visual C# .NET 2002 Standard Edition
Kata kunci: 
kbhowtomaster kbsystemdata kbmt KB311566 KbMtid
Penerjemahan MesinPenerjemahan Mesin
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:311566  (http://support.microsoft.com/kb/311566/en-us/ )