persist
This commit is contained in:
@@ -7,15 +7,21 @@ namespace PepperBot.Infrastructure.Data;
|
|||||||
public class SqliteDealRepository : IDealRepository
|
public class SqliteDealRepository : IDealRepository
|
||||||
{
|
{
|
||||||
private const string DatabaseFileName = "pepper_bot.db";
|
private const string DatabaseFileName = "pepper_bot.db";
|
||||||
|
private const string DataDirectory = "data";
|
||||||
|
|
||||||
private string ConnectionString =>
|
private string ConnectionString =>
|
||||||
new SqliteConnectionStringBuilder
|
new SqliteConnectionStringBuilder
|
||||||
{
|
{
|
||||||
DataSource = DatabaseFileName
|
DataSource = Path.Combine(DataDirectory, DatabaseFileName)
|
||||||
}.ToString();
|
}.ToString();
|
||||||
|
|
||||||
public async Task InitializeAsync(CancellationToken cancellationToken)
|
public async Task InitializeAsync(CancellationToken cancellationToken)
|
||||||
{
|
{
|
||||||
|
if (Directory.Exists(DataDirectory))
|
||||||
|
{
|
||||||
|
Directory.CreateDirectory(DataDirectory);
|
||||||
|
}
|
||||||
|
|
||||||
await using var connection = new SqliteConnection(ConnectionString);
|
await using var connection = new SqliteConnection(ConnectionString);
|
||||||
await connection.OpenAsync(cancellationToken);
|
await connection.OpenAsync(cancellationToken);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user