namespace SHH.CameraSdk; public class FileStorageService : IStorageService { public int ProcessId { get; } private readonly string _basePath; // 专属数据目录 public FileStorageService(int processId) { ProcessId = processId; // 核心逻辑:数据隔离 // 1号进程 -> App_Data/Process_1/ // 2号进程 -> App_Data/Process_2/ _basePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "App_Data", $"Process_{processId}"); // 既然是框架搭建,我们要确保这个目录存在,否则后面谁写谁报错 if (!Directory.Exists(_basePath)) { Directory.CreateDirectory(_basePath); } Console.WriteLine($"[Storage] 存储服务已就绪。数据隔离路径: {_basePath}"); } // --- 下面是未实现的空架子 --- public Task SaveDevicesAsync(object configs) { // TODO: 待实现序列化写入 return Task.CompletedTask; } public Task LoadDevicesAsync() { // TODO: 待实现读取 return Task.FromResult(null); } public Task AppendSystemLogAsync(string action, string ip, string path) { // TODO: 待实现系统日志写入 return Task.CompletedTask; } public Task AppendDeviceLogAsync(long deviceId, string message) { // TODO: 待实现设备日志写入 return Task.CompletedTask; } }