move database utils to Database/Utils, create DatabaseMigrator

This commit is contained in:
spiral
2021-08-01 11:13:32 -04:00
parent d633cd4906
commit 3d2435eb2e
7 changed files with 91 additions and 62 deletions

View File

@@ -0,0 +1,18 @@
using System.Collections.Generic;
using System.Data.Common;
using Dapper;
namespace PluralKit.Core {
public static class ConnectionUtils
{
public static async IAsyncEnumerable<T> QueryStreamAsync<T>(this IPKConnection conn, string sql, object param)
{
await using var reader = (DbDataReader) await conn.ExecuteReaderAsync(sql, param);
var parser = reader.GetRowParser<T>();
while (await reader.ReadAsync())
yield return parser(reader);
}
}
}