Put interface behind database provider for testing. Use state object to get data from database, then map to model.

This commit is contained in:
Robert Marshall 2019-04-14 21:49:01 +01:00
parent 5a0d0933ce
commit 20ccdd07f1
11 changed files with 118 additions and 34 deletions

View file

@ -0,0 +1,17 @@
using System.Data;
using Microsoft.Extensions.Configuration;
using MySql.Data.MySqlClient;
namespace Website.Data
{
public class MySQLDatabaseProvider:IDatabaseProvider
{
private readonly string _connectionString;
public MySQLDatabaseProvider(IConfiguration config) => _connectionString = config.GetConnectionString("database");
public MySQLDatabaseProvider(string connectionString) => _connectionString = connectionString;
public IDbConnection NewConnection() => new MySqlConnection(_connectionString);
}
}