using HotelPms.Share.IO;
|
using HotelPms.Share.Util;
|
using System.Text;
|
|
namespace HotelPms.WinForm.Common.Util
|
{
|
public class Config : DictionarySetting
|
{
|
public enum SettingKey : int
|
{
|
HostName,
|
DBName,
|
UserID,
|
Password,
|
}
|
|
private static Config? m_Instance;
|
public static Config? Instance
|
{
|
get
|
{
|
if (m_Instance == null) { Initialize(); }
|
return m_Instance;
|
}
|
}
|
|
public string Get(SettingKey key)
|
{
|
return GetValue(key.ToString());
|
}
|
|
public void Set(SettingKey key, string value)
|
{
|
SetValue(key.ToString(), value);
|
}
|
|
/// <summary>
|
/// アプリケーションの初期化
|
/// </summary>
|
/// <returns></returns>
|
private static bool Initialize()
|
{
|
try
|
{
|
m_Instance = new Config();
|
m_Instance.FileName = Application.StartupPath + @"Config.json";
|
m_Instance.Load();
|
return true;
|
}
|
catch (Exception ex)
|
{
|
OperationLog.Instance.WriteLog($"Config.Initialize異常エラー:{ex.Message}");
|
return false;
|
}
|
}
|
|
public override void SetDefault()
|
{
|
if (!Data.ContainsKey(SettingKey.HostName.ToString())) { Data.Add(SettingKey.HostName.ToString(), "localhost"); }
|
if (!Data.ContainsKey(SettingKey.DBName.ToString())) { Data.Add(SettingKey.DBName.ToString(), "HotelPms"); }
|
if (!Data.ContainsKey(SettingKey.UserID.ToString())) { Data.Add(SettingKey.UserID.ToString(), "sa"); }
|
if (!Data.ContainsKey(SettingKey.Password.ToString())) { Data.Add(SettingKey.Password.ToString(), "oatcti"); }
|
}
|
|
public override string ToString()
|
{
|
StringBuilder text = new StringBuilder();
|
foreach (KeyValuePair<string, string> item in Data)
|
{
|
text.AppendLine($"{item.Key}={item.Value}");
|
}
|
return text.ToString();
|
}
|
}
|
}
|