using System.IO;
namespace YY.Admin.Core.Util;
///
/// 当前用户可写应用数据目录(避免安装在 Program Files 时无写权限)。
///
public static class AppWritablePaths
{
private static readonly string Root = Path.Combine(
Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData),
"YY.Admin");
/// 应用私有根目录:%LocalAppData%\YY.Admin
public static string LocalApplicationRoot => Root;
/// SQLite 等业务数据库目录。
public static string DataDirectory => Path.Combine(Root, "Data");
/// 用户覆盖的配置、Jeecg 同步状态等。
public static string ConfigurationDirectory => Path.Combine(Root, "Configuration");
/// 按账号划分的本地设置(对应 CommonConst.AppSettingsFilePath 前缀)。
public static string AccountSettingsRootDirectory => Path.Combine(Root, "AppSettings");
///
/// 创建目录(若不存在)并返回路径。
///
public static string EnsureDirectoryExists(string directoryPath)
{
if (!string.IsNullOrWhiteSpace(directoryPath))
{
Directory.CreateDirectory(directoryPath);
}
return directoryPath;
}
}