dbSettingFrom.cs 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Text;
  7. using System.Linq;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10. using DevExpress.XtraEditors;
  11. using System.Configuration;
  12. using System.Diagnostics;
  13. namespace Uninpho.Tools.components.SomethingSetting
  14. {
  15. public partial class dbSettingFrom : DevExpress.XtraEditors.XtraForm
  16. {
  17. public dbSettingFrom()
  18. {
  19. InitializeComponent();
  20. }
  21. private void settingBtn_Click(object sender, EventArgs e)
  22. {
  23. SaveAppConfig("dbConnection", "PORT=" + PORT.Text + ";DATABASE=" + DATABASE.Text + ";HOST=" + HOST.Text + ";PASSWORD=" + PASSWORD.Text + ";USER ID=" + USER_ID.Text);
  24. if (XtraMessageBox.Show("配置更改需要重启软件才能生效,是否立刻重启软件?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
  25. {
  26. Application.Restart();
  27. Process.GetCurrentProcess()?.Kill();
  28. }
  29. }
  30. private void dbSettingFrom_Load(object sender, EventArgs e)
  31. {
  32. string[] Con = ConfigurationManager.AppSettings["dbConnection"].Split(';');
  33. HOST.Text = Con[2].Split('=')[1];
  34. USER_ID.Text = Con[4].Split('=')[1];
  35. PASSWORD.Text = Con[3].Split('=')[1];
  36. PORT.Text = Con[0].Split('=')[1];
  37. DATABASE.Text = Con[1].Split('=')[1];
  38. }
  39. /// <summary>
  40. /// 保存配置文件的设定
  41. /// </summary>
  42. /// <param name="Key"></param>
  43. /// <param name="Value"></param>
  44. public static void SaveAppConfig(string Key, string Value)
  45. {
  46. string strFilePath = System.Windows.Forms.Application.ExecutablePath;
  47. Configuration objConfig = ConfigurationManager.OpenExeConfiguration(strFilePath);
  48. bool bolExist = false;
  49. foreach (string Item in objConfig.AppSettings.Settings.AllKeys)
  50. {
  51. if (Item == Key)
  52. {
  53. bolExist = true;
  54. break;
  55. }
  56. }
  57. if (bolExist)
  58. {
  59. objConfig.AppSettings.Settings.Remove(Key);
  60. }
  61. objConfig.AppSettings.Settings.Add(Key, Value);
  62. objConfig.Save(ConfigurationSaveMode.Modified);
  63. ConfigurationManager.RefreshSection("appSettings");
  64. }
  65. }
  66. }