using System.Reflection;
|
using SqlSugar;
|
|
namespace IStation.ChEr.DAL
|
{
|
/// <summary>
|
/// 数据库连接辅助类
|
/// </summary>
|
public class ConnectionFactory
|
{
|
private static Dictionary<int, ConnectionConfig> _mainConfigDict = new Dictionary<int, ConnectionConfig>();
|
|
/// <summary>
|
/// 创建连接对象
|
/// </summary>
|
public static ConnectionConfig MainConnection(int year)
|
{
|
try
|
{
|
if (_mainConfigDict.ContainsKey(year))
|
return _mainConfigDict[year];
|
|
var root_directory = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
|
|
var dsName = string.Format("WaterPredict{0}.db", year);
|
|
var filePath = Path.Combine(root_directory, "Data", dsName);
|
if (!System.IO.File.Exists(filePath))
|
{
|
throw new System.Exception($"{dsName}文件不存在!Path:{filePath}");
|
}
|
|
var mainConfig = new ConnectionConfig()
|
{
|
ConnectionString = $"DataSource={filePath}",
|
IsAutoCloseConnection = true,
|
DbType = SqlSugar.DbType.Sqlite
|
};
|
_mainConfigDict[year] = mainConfig;
|
return mainConfig;
|
}
|
catch //(System.Exception ex)
|
{
|
// LogHelper.Error(ex.Message);
|
return null;
|
}
|
}
|
|
|
}
|
}
|