using System;
using System.Linq;
using System.Text;
namespace Easy4net.Variety.SQLite
{
///
/// SQLite数据库连接参数
///
public class SQLiteConnectionParam
{
///
/// 数据库连接字符串
///
internal static string ConnectionString { get; private set; }
///
/// SQLite数据库路径
///
public string FileName { get; private set; }
///
/// SQLite数据库密码
///
public string Password { get; private set; }
///
/// 创建一个无密码的SQLite数据库参数
///
/// 数据库文件路径
public SQLiteConnectionParam(string aFile)
{
this.FileName = aFile;
}
///
/// 创建一个带密码的SQLite数据库参数
///
///
///
public SQLiteConnectionParam(string aFile, string aPwd)
: this(aFile)
{
this.Password = aPwd;
}
///
/// 将当前参数设置为全局连接参数
///
public void SetGlobal()
{
// 更新连接字符串
ConnectionString = GetConnectionString(this);
}
///
/// 输出当前连接参数字符串
///
///
public override string ToString()
{
return GetConnectionString(this);
}
///
/// 根据当前的变量生成链接字符串
///
/// 数据库连接参数
/// 连接字符串
internal static string GetConnectionString(SQLiteConnectionParam aParam)
{
StringBuilder tmp_sb = new StringBuilder();
tmp_sb.AppendFormat("Data Source='{0}';", aParam.FileName);
if (!String.IsNullOrEmpty(aParam.Password))
{
tmp_sb.AppendFormat("password={0}", aParam.Password);
}
return tmp_sb.ToString();
}
}
}