using Fleet.Server; using Microsoft.Extensions.DependencyInjection; using MoShiro.Backend.Application; namespace MoShiro.Backend.Storage.Sqlite; public static class StorageServiceCollectionExtensions { /// 注册 SQLite + 段文件存储:实现 Application 的全部存储端口,同时实现 Fleet 的 。 public static IServiceCollection AddMoShiroSqlite(this IServiceCollection services, string dataDirectory) { services.AddSingleton(_ => new SqliteDatabase(dataDirectory)); services.AddSingleton(); services.AddSingleton(p => p.GetRequiredService()); services.AddSingleton(p => p.GetRequiredService()); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); return services; } }