Bagaimana untuk menyimpan dan mengambil informasi kustom dari file konfigurasi aplikasi dengan menggunakan Visual C#

Terjemahan Artikel Terjemahan Artikel
ID Artikel: 815786 - Melihat produk di mana artikel ini berlaku.
Untuk Microsoft Visual Basic.NET versi ini Pasal, lihat 313405.
Artikel ini merujuk kepada Microsoft berikut.NET Framework Kelas perpustakaan namespace:
  • System.Configuration
Perbesar semua | Perkecil semua

Pada Halaman ini

RINGKASAN

Artikel ini menjelaskan cara menyimpan informasi kustom di file konfigurasi (.config) yang Anda dapat mengambil kemudian selama jangka waktu oleh para aplikasi yang terkait. Hal ini berguna jika Anda harus menentukan data yang terkait dengan aplikasi.

Persyaratan

Daftar berikut menguraikan fitur perangkat keras, perangkat lunak, jaringan infrastruktur, dan paket layanan yang Anda butuhkan:
  • Microsoft Windows 2000, Windows XP, Windows Server 2003, Windows Vista, atau Windows Server 2008
  • Microsoft Visual C#
Artikel ini mengasumsikan bahwa Anda sudah familiar dengan berikut topik:
  • Extensible Markup Language (XML)
  • .File konfigurasi NET

Membuat aplikasi konsol yang membaca isi dari File konfigurasi

Anda dapat menyimpan aplikasi pengaturan dalam konfigurasi file terkait dengan aplikasi. File konfigurasi disimpan dalam XML format.

The System.Configuration danSystem.Collections.Specialized namespaces di Microsoft.NET Framework termasuk yang diperlukan kelas untuk mengambil informasi dari.File konfigurasi aplikasi NET selama jangka waktu.

Untuk membuat aplikasi konsol yang berbunyi isi dari suatu file konfigurasi terkait selama jangka waktu, ikuti langkah-langkah:
  1. Mulai Visual Studio.NET atau Visual Studio 2005.
  2. Pada Berkas menu, titikBaru, lalu klik Project.
  3. Klik Visual C# di bawahJenis proyek, lalu klik Konsol Aplikasi di bawah Pola acu. Nama proyek ConConfig. Secara default, Visual C# menciptakan kelas yang bernama Program.

    Catatan Dalam Visual Studio.NET 2003, klik Visual C# proyek di bawahJenis proyek, lalu klik Konsol Aplikasi di bawah Pola acu. Nama proyekConConfig. Secara default, Visual C# menciptakan kelas yang bernama Class1.
  4. Pastikan bahwa jendela Explorer solusi terlihat. Jika tidak terlihat, tekan CTRL + ALT + L kombinasi tombol.
  5. Dalam solusi Explorer, klik kanan nama proyek, klik Tambahkan, lalu klik Item baru.
  6. Dalam Menambah Item baru Daftar, klik untuk memilihXML File.
  7. Dalam Nama kotak teks, ketikApp.config, lalu klikTambahkan.

    Catatan Dalam Visual Studio.NET 2003, klik Terbuka.
  8. Anda dapat menggunakan berkas konfigurasi aplikasi untuk mengumpulkan Pengaturan aplikasi kustom yang Anda simpan dalam format kunci/nilai. Anda dapat menyertakan <add></add> unsur-unsur dalam <appsettings></appsettings> bagian dari file konfigurasi terkait. Setiap pasangan kunci/nilai memiliki satu <add></add> elemen. An <add></add> elemen memiliki format berikut:
    <add key="Key0" value="0" />
    Tambahkan <appsettings></appsettings> bagian dengan <add></add> unsur-unsur untuk berkas konfigurasi antara<configuration></configuration> dan Tag.

    Sebagai contoh, Setelah file konfigurasi termasuk <appsettings></appsettings> bagian yang menentukan tiga pasangan kunci/nilai:
    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
       <appSettings>
          <add key="Key0" value="0" />
          <add key="Key1" value="1" />
          <add key="Key2" value="2" />
       </appSettings>
    </configuration>
    
  9. Pada solusi Explorer, klik dua kaliProgram.cs untuk menampilkan jendela kode. Tambahkan berikut pernyataan untuk modul kode Anda.

    Catatan Pernyataan-pernyataan ini harus muncul sebelum pernyataan lain dalam file.
    using System.Configuration;
    using System.Collections.Specialized;
  10. Menambahkan referensi ke System.Configuration.dll. Untuk melakukannya, ikuti langkah-langkah berikut:
    1. Pada Project menu, klik Menambahkan referensi.
    2. Dalam Menambahkan referensi dialog kotak, klik .NET tab.
    3. Cari dan pilih nama komponen System.Configuration.
    4. Klik Oke.
  11. Untuk memegang nilai dari kunci berkas konfigurasi di<appsettings></appsettings> bagian dari file konfigurasi, menyatakan Sebuah variabel string di Utama bagian sebagai berikut:
     string  sAttr ;
  12. Untuk mengambil nilai untuk kunci tertentu dari <appsettings></appsettings> bagian dari file konfigurasi, penggunaan Mendapatkan metode AppSettings properti ConfigurationManager kelas. The ConfigurationManager kelas adalah di System.Configuration namespace. Ketika AppSettings.Get metode menerima parameter input string yang berisi kunci, aplikasi mengambil nilai yang dikaitkan dengan kunci.

    The Berikut kode mengambil nilai untuk Key0 atribut dari berkas konfigurasi terkait. Kode kemudian tempat ini nilai dalam sAttr String variabel. Jika kunci tidak ada untuk nilai ini, tidak ada disimpan dalam sAttr.
    sAttr = ConfigurationManager.AppSettings.Get("Key0");
  13. Untuk menampilkan nilai yang mengambil aplikasi di Konsol jendela, menggunakan Console.WriteLine sebagai berikut:
    Console.WriteLine("The value of Key0 is "+sAttr);
  14. Anda dapat menggunakan satu referensi untuk AppSettings properti untuk mengambil semua kunci/nilai pasangan di<appsettings></appsettings> bagian. Ketika Anda menggunakan AppSettings properti, aplikasi mengembalikan semua terkait kunci/nilai pasangan. Pasangan ini disimpan dalam NameValueCollection jenis. The NameValueCollection berisi kunci/nilai entri untuk masing-masing kunci yang aplikasi mengambil. The NameValueCollection kelas adalah di System.Collections.Specialized namespace.
    NameValueCollection sAll ;
    sAll = ConfigurationManager.AppSettings;
  15. The AllKeys properti NameValueCollection referensi array string yang memiliki sebuah entri untuk masing-masing kunci yang aplikasi akan mengambil. Penggunaan foreach konstruksi untuk iterate melalui AllKeys array untuk mengakses setiap kunci yang akan mengambil aplikasi. Setiap tombol entri di AllKeys adalah tipe data string.

    Di dalam foreach konstruksi, penggunaan Console.WriteLine untuk menampilkan tombol dan nilai terkait di konsol jendela. Kunci saat ini bahwa proses aplikasi dalam "s". Menggunakan ini sebagai indeks di sAllNameValueCollection untuk mendapatkan nilai terkait.
       foreach (string s in sAll.AllKeys)
          Console.WriteLine("Key: "+ s + " Value: " + sAll.Get(s));
       Console.ReadLine();

Daftar kode lengkap

using System;
using System.Configuration;
using System.Collections.Specialized;

namespace ConConfig
{
    class Program
    {
        static void Main(string[] args)
        {
            string sAttr;

            // Read a particular key from the config file            
            sAttr = ConfigurationManager.AppSettings.Get("Key0");
            Console.WriteLine("The value of Key0: " + sAttr);

            // Read all the keys from the config file
            NameValueCollection sAll;
            sAll = ConfigurationManager.AppSettings;

            foreach (string s in sAll.AllKeys)
                Console.WriteLine("Key: " + s + " Value: " + sAll.Get(s));
           Console.ReadLine();
       }
    }
}
Catatan Kode ini menargetkan.NET Framework 2.0. Jika Anda menggunakan.NET Framework 1.0 atau.NET Framework 1.1, mengubah semua contoh ConfigurationManager kelas untuk ConfigurationSettings.

Lengkap File konfigurasi daftar (ConConfig.exe.config)

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
   <appSettings>
      <add key="Key0" value="0" />
      <add key="Key1" value="1" />
      <add key="Key2" value="2" />
   </appSettings>
</configuration>

Memverifikasi bahwa ia bekerja

Tekan F5 untuk menjalankan kode. Jendela konsol yang harus menampilkan kunci/nilai pasangan dari <appsettings></appsettings> bagian dari file terkait konfigurasi sebagai berikut:
The value of Key0: 0
Key: Key0 Value:0
Key: Key1 Value:1
Key: Key2 Value:2
		

Mengatasi masalah

  • File konfigurasi disimpan dalam XML format. Pastikan bahwa Anda mengikuti semua aturan-aturan sintaks XML. Ingat bahwa XML case-sensitive. Jika XML tidak terbentuk dengan baik, atau jika elemen salah eja, Anda menerima System.Configuration.Configuration pengecualian.

    Sebagai contoh, jika Anda menambahkan atribut utama dari <add></add> elemen dengan huruf besar "K" bukan huruf kecil "k," atau jika The <appsettings></appsettings> bagian muncul sebagai <appsettings></appsettings> (dengan huruf besar "A" bukan huruf kecil ""), Anda menerima pesan galat.
  • File konfigurasi harus disimpan dalam folder yang sama sebagai aplikasi yang terkait.
  • Anda harus menggunakan sintaks berikut untuk konfigurasi nama file:
    ApplicationName.ApplicationType.config
    di mana ApplicationName adalah nama aplikasi, ApplicationType jenis aplikasi (misalnya, .exe), dan .config adalah akhiran diperlukan.

REFERENSI

Untuk selengkapnya, lihat Microsoft berikut pengembang Situs Web Network (MSDN):
ConfigurationSettings.AppSettings properti
.aspx http://MSDN.Microsoft.com/en-us/library/System.Configuration.configurationsettings.AppSettings (vs.71)
System.Configuration Namespace
.aspx http://MSDN.Microsoft.com/en-us/library/System.Configuration (vs.71)

Properti

ID Artikel: 815786 - Kajian Terakhir: 04 Oktober 2011 - Revisi: 2.0
Berlaku bagi:
  • Microsoft Visual C# 2008 Express Edition
  • Microsoft Visual C# 2005 Express Edition
  • Microsoft Visual C# .NET 2003 Standard Edition
  • Microsoft Visual C# .NET 2002 Standard Edition
Kata kunci: 
kbsweptvs2008 kbcollections kbcollectionclass kbconfig kbnamespace kbhowtomaster kbprogramming kbmt KB815786 KbMtid
Penerjemahan 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:815786

Berikan Masukan

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com