rtmpdash/Backend/Database/Database.cs

37 lines
1.2 KiB
C#
Raw Normal View History

2021-01-24 04:04:16 +01:00
using System.Collections.Generic;
using System.Linq;
using LinqToDB;
using LinqToDB.Configuration;
using LinqToDB.Data;
2022-12-15 22:36:15 +01:00
using RTMPDash.Backend.Database.Tables;
2021-01-24 04:04:16 +01:00
2022-12-15 22:36:15 +01:00
namespace RTMPDash.Backend.Database;
2022-02-04 04:48:04 +01:00
2022-12-15 22:36:15 +01:00
public class Database {
2022-02-04 04:48:04 +01:00
public class ConnectionStringSettings : IConnectionStringSettings {
public string ConnectionString { get; set; }
public string Name { get; set; }
public string ProviderName { get; set; }
public bool IsGlobal => false;
}
2021-01-24 04:04:16 +01:00
2022-02-04 04:48:04 +01:00
public class Settings : ILinqToDBSettings {
public IEnumerable<IDataProviderSettings> DataProviders => Enumerable.Empty<IDataProviderSettings>();
2021-01-24 04:04:16 +01:00
2022-02-04 04:48:04 +01:00
public string DefaultConfiguration => "SQLite";
public string DefaultDataProvider => "SQLite";
2021-01-24 04:04:16 +01:00
2022-02-04 04:48:04 +01:00
public IEnumerable<IConnectionStringSettings> ConnectionStrings {
get { yield return new ConnectionStringSettings { Name = "db", ProviderName = "SQLite", ConnectionString = @"Data Source=app.db;" }; }
2021-01-24 04:04:16 +01:00
}
2022-02-04 04:48:04 +01:00
}
2021-01-24 04:04:16 +01:00
2022-02-04 04:48:04 +01:00
public class DbConn : DataConnection {
public DbConn() : base("db") { }
2021-01-24 04:04:16 +01:00
2022-02-04 04:48:04 +01:00
public ITable<User> Users => GetTable<User>();
public ITable<Invite> Invites => GetTable<Invite>();
public ITable<DbInfo> DbInfo => GetTable<DbInfo>();
2021-01-24 04:04:16 +01:00
}
2022-02-09 22:32:17 +01:00
}