using LinqToDB; using LinqToDB.Configuration; using LinqToDB.Data; using zotanpw.Backend.database.Tables; namespace zotanpw.Backend.database; public class Database { private class ConnectionStringSettings : IConnectionStringSettings { public string ConnectionString { get; set; } = null!; public string Name { get; set; } = null!; public string ProviderName { get; set; } = null!; public bool IsGlobal => false; } public class Settings : ILinqToDBSettings { public IEnumerable DataProviders => Enumerable.Empty(); public string DefaultConfiguration => "SQLite"; public string DefaultDataProvider => "SQLite"; public IEnumerable ConnectionStrings { get { yield return new ConnectionStringSettings { Name = "db", ProviderName = "SQLite", ConnectionString = @"Data Source=database.db;" }; } } } public class DbConn : DataConnection { public DbConn() : base("db") { } public ITable DbInfo => this.GetTable(); public ITable TravelynxInfo => this.GetTable(); public ITable AlbumHistory => this.GetTable(); public ITable PlaylistHistory => this.GetTable(); } }