82 lines
3.1 KiB
C#
82 lines
3.1 KiB
C#
using System;
|
|
using IniParser;
|
|
using IniParser.Model;
|
|
|
|
namespace henlo_migration.Common
|
|
{
|
|
public static class SysConfig
|
|
{
|
|
private static IniData _init;
|
|
|
|
private static string ConfigPath => System.IO.Path.Combine(CommonHelper.RootPath, "config.ini");
|
|
static SysConfig()
|
|
{
|
|
var parser = new FileIniDataParser();
|
|
|
|
// 确保 config.ini 存在
|
|
if (!System.IO.File.Exists(ConfigPath))
|
|
{
|
|
System.IO.File.WriteAllText(ConfigPath, @"[oracle]
|
|
orig_ip=127.0.0.1
|
|
orig_exam=orcl
|
|
orig_user=system
|
|
orig_password=system
|
|
desc_ip=127.0.0.1
|
|
desc_exam=orcl
|
|
desc_user=system
|
|
desc_password=system
|
|
");
|
|
}
|
|
_init = parser.ReadFile(ConfigPath);
|
|
}
|
|
|
|
/// <summary>源 Oracle 连接字符串</summary>
|
|
public static string origConnStr =>
|
|
$"Data Source={_init["oracle"]["orig_ip"]}/{_init["oracle"]["orig_exam"]};User ID={_init["oracle"]["orig_user"]};Password={_init["oracle"]["orig_password"]}";
|
|
|
|
/// <summary>目标 Oracle 连接字符串</summary>
|
|
public static string destConnStr =>
|
|
$"Data Source={_init["oracle"]["desc_ip"]}/{_init["oracle"]["desc_exam"]};User ID={_init["oracle"]["desc_user"]};Password={_init["oracle"]["desc_password"]}";
|
|
|
|
/// <summary>版本号(从程序集读取)</summary>
|
|
public static string version =>
|
|
System.Reflection.Assembly.GetExecutingAssembly().GetName().Version?.ToString(3) ?? "1.0.0";
|
|
|
|
private static void Set(string section, string key, string value)
|
|
{
|
|
_init[section][key] = value;
|
|
var parser = new FileIniDataParser();
|
|
parser.WriteFile(ConfigPath, _init);
|
|
}
|
|
|
|
/// <summary>保存源库连接信息</summary>
|
|
public static void SetOrig(string ip, string exam, string user, string pwd)
|
|
{
|
|
Set("oracle", "orig_ip", ip);
|
|
Set("oracle", "orig_exam", exam);
|
|
Set("oracle", "orig_user", user);
|
|
Set("oracle", "orig_password", pwd);
|
|
}
|
|
|
|
/// <summary>保存目标库连接信息</summary>
|
|
public static void SetDest(string ip, string exam, string user, string pwd)
|
|
{
|
|
Set("oracle", "desc_ip", ip);
|
|
Set("oracle", "desc_exam", exam);
|
|
Set("oracle", "desc_user", user);
|
|
Set("oracle", "desc_password", pwd);
|
|
}
|
|
|
|
// 各字段独立读取(供 ViewModel 初始化填充界面用)
|
|
public static string GetOrigIp() => _init["oracle"]["orig_ip"];
|
|
public static string GetOrigExam() => _init["oracle"]["orig_exam"];
|
|
public static string GetOrigUser() => _init["oracle"]["orig_user"];
|
|
public static string GetOrigPwd() => _init["oracle"]["orig_password"];
|
|
public static string GetDestIp() => _init["oracle"]["desc_ip"];
|
|
public static string GetDestExam() => _init["oracle"]["desc_exam"];
|
|
public static string GetDestUser() => _init["oracle"]["desc_user"];
|
|
public static string GetDestPwd() => _init["oracle"]["desc_password"];
|
|
public static string GetVersion() => version;
|
|
}
|
|
}
|