1
我正在使用一些if ... else條件來檢查C#中文本框中的某些更改。這是代碼。只有在有任何更改時才重新啓動應用程序
private void button1_Click(object sender, EventArgs e)
{
if (txtUsername.Text != UsernameS)
{
string json = File.ReadAllText("settings.json");
dynamic jsonObj = JsonConvert.DeserializeObject(json);
jsonObj["Bots"][0]["Username"] = txtUsername.Text;
string output = JsonConvert.SerializeObject(jsonObj, Formatting.Indented);
File.WriteAllText("settings.json", output);
}
if (txtPassword.Text != PasswordS)
{
string json = File.ReadAllText("settings.json");
dynamic jsonObj = JsonConvert.DeserializeObject(json);
jsonObj["Bots"][0]["Password"] = txtPassword.Text;
string output = JsonConvert.SerializeObject(jsonObj, Formatting.Indented);
File.WriteAllText("settings.json", output);
}
var filename = System.Reflection.Assembly.GetExecutingAssembly().Location;
System.Diagnostics.Process.Start(filename);
// Closes the current process
Environment.Exit(0);
}
好了,現在我想要做的是,我不希望它如果沒有變化重新啓動。儘管我也想同時修復所有更改。也就是說,經歷所有條件,然後重新啓動。使用我當前的代碼,即使沒有任何更改,應用程序也會重新啓動。請幫助:)
使用局部變量,調用它,嗯,「變化」或其他。默認情況下它是'false',如果你進入條件內部,那麼它變成'true',最後檢查它,如果它是真的,然後保存更改並退出。問題是什麼?順便說一句,使閱讀常見(即在任何情況下發生),重複行不好,你會閱讀整個設置兩次,如果兩個文本框已更改值。 – Sinatr