AfRApay/AfRApay.Web/Backend/Database.cs
2023-02-06 02:37:36 +01:00

35 lines
1.2 KiB
C#

using AfRApay.Web.Backend.Tables;
using LinqToDB;
using LinqToDB.Configuration;
using LinqToDB.Data;
namespace AfRApay.Web.Backend;
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<IDataProviderSettings> DataProviders => Enumerable.Empty<IDataProviderSettings>();
public string DefaultConfiguration => "SQLite";
public string DefaultDataProvider => "SQLite";
public IEnumerable<IConnectionStringSettings> 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> DbInfo => this.GetTable<DbInfo>();
public ITable<User> Users => this.GetTable<User>();
public ITable<Card> Cards => this.GetTable<Card>();
public ITable<Config> Config => this.GetTable<Config>();
}
}