protected TagFileService() { #if !DISPOSE_CONTEXT_IMMEDIATELY var builder = new DbContextOptionsBuilder <TagFileContext>(); builder.UseSqlite($"Data Source={TagFileConfig.DbPath}"); context = new TagFileContext(builder.Options); #endif }
/// <summary> /// 确保数据库和仓库文件夹已创建(异步版本) /// </summary> public static async Task EnsureDbAndFolderCreatedAsync() { //ensure folders created Directory.CreateDirectory(TagFileConfig.TagFileRootPath); Directory.CreateDirectory(TagFileConfig.RepoPath); Directory.CreateDirectory(TagFileConfig.TempRecyclePath); //ensure db created var builder = new DbContextOptionsBuilder <TagFileContext>(); builder.UseSqlite($"Data Source={TagFileConfig.DbPath}"); using (var context = new TagFileContext(builder.Options)) { await context.Database.EnsureCreatedAsync(); } }