我已經改變了我使用的設置從
private int _Capacity = ConfigurationManager.AppSettings["FuelTankCapacity"];
到...
private int _Capacity = Convert.ToInt32(ConfigurationManager.AppSettings["FuelTankCapacity"]);
這解決了這個問題,但它感覺像是一個懶散的修復。必須有一種方法來指定整數類型的設置,有沒有?
原來的問題
已經在我的WinForms應用程序創建的一些設置,我有一些麻煩,他們中的一個。
該設置旨在指定燃油箱的最大容量,值爲2000
(2000升)。
不幸的是,該設置正在被讀爲字符串值而不是int,即使我指定它應該是一個整數值。
下面是這個設定的App.config
代碼:
<setting name="FuelTankCapacity" serializeAs="String">
<value>2000</value>
</setting>
注意,SerializeAs
值更改爲INT /的Int32不能解決問題。
到目前爲止您無法重現您的問題,您可以發佈屬性設置蒙版的屏幕截圖嗎?與有問題的變量? –
你是否像這樣使用設置:** Properties.Settings.Default.FuelTankCapacity **? –
你是否通過項目屬性窗口修改了設置文件,而不是直接進入app.config.That似乎總是有效。然後通過「屬性」命名空間訪問它。 – Wheels73