Saya tidak dapat mengakses nilai dalam file konfigurasi.
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
var clientsFilePath = config.AppSettings.Settings["ClientsFilePath"].Value;
// the second line gets a NullReferenceException
file .config :
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<!-- ... -->
<add key="ClientsFilePath" value="filepath"/>
<!-- ... -->
</appSettings>
</configuration>
Apakah Anda punya saran apa yang harus saya lakukan?
System.Configuration
.System.Configuration
belumConfigurationManager
Jawaban yang diberikan dtsg bekerja:
NAMUN, Anda perlu menambahkan referensi perakitan untuk
Buka Solution Explorer Anda dan klik kanan pada Referensi dan pilih Tambahkan referensi . Pilih tab Assemblies dan cari Configuration .
Ini adalah contoh dari App.config saya :
Yang bisa Anda dapatkan dengan cara berikut:
sumber
System.configuration
(huruf kecil).Coba ini:
sumber
Baca Dari Konfigurasi:
Anda harus menambahkan referensi ke Konfigurasi
Simpan ke Konfigurasi:
sumber
null
string dengan rekomendasi di atas, tetapiProperties.Settings.Default.<keyName>
bekerja seperti pesona!Saya menggunakan:
Di mana value1 = ... dan value3 = ... memberikan null dan value2 = ... berfungsi
Kemudian saya memutuskan untuk mengganti app.config internal dengan:
Menggunakan VS2012 .net 4
sumber
Di
app/web.config
file atur konfigurasi berikut:maka Anda dapat mengakses ini dalam kode Anda dengan memasukkan baris ini:
* Perhatikan bahwa ini berfungsi dengan baik untuk
.net4.5.x
dan.net4.6.x
; tetapi tidak bekerja untuk.net core
. Salam, Rafaelsumber
Kembali ke yang ini setelah waktu yang lama ...
Mengingat matinya ConfigurationManager, bagi siapa pun yang masih mencari jawaban untuk percobaan ini (misalnya):
Membutuhkan System.Configuration tentu saja.
(Mengedit kode ke sesuatu yang benar-benar berfungsi dan lebih mudah dibaca)
sumber
Melihat saya melakukan apa yang saya pikir adalah hal yang jelas adalah:
Sementara itu kompilasi selalu mengembalikan nol.
Namun ini (dari atas) berfungsi:
sumber
Beberapa Jawaban tampaknya sedikit tidak aktif dari IMO Inilah yang saya ambil sekitar tahun 2016
Pastikan
System.Configuration
direferensikan.Pertanyaan adalah menanyakan nilai kunci pengaturan aplikasi
Yang pasti HARUS
Berikut ini adalah twist di mana Anda dapat mengelompokkan nilai bersama (bukan untuk pertanyaan ini)
emails
akan menjadi nilai Kunci Lingkungan + "_Emails"sumber
Untuk aplikasi web, saya biasanya akan menulis metode ini dan cukup menyebutnya dengan kunci.
sumber
Anda cukup mengetik:
karena
key
merupakan objek danAppSettings
mengambil stringsumber
sumber
Atau Anda bisa menggunakan
sumber
Tes sederhana saya juga gagal, mengikuti saran dari jawaban lain di sini - sampai saya menyadari bahwa file konfigurasi yang saya tambahkan ke aplikasi desktop saya diberi nama "App1.config". Saya menamainya menjadi "App.config" dan semuanya segera berfungsi sebagaimana mestinya.
sumber
KODE AKAN DIHASILKAN SECARA OTOMATIS
Untuk mendapatkan nilai
Properties.Settings.Default.Name
ATAU
Properti.Settings.Fault ["name"]
sumber