27 lines
962 B
C#
27 lines
962 B
C#
using PetaPoco;
|
|
|
|
namespace StockingData.Lib.IO.Databases;
|
|
|
|
public static class DatabaseContext
|
|
{
|
|
public static Database GetDatabase()
|
|
{
|
|
var dbname = Environment.GetEnvironmentVariable("RDBNAME");
|
|
var dbhost = Environment.GetEnvironmentVariable("RDBHOST");
|
|
var dbuser = Environment.GetEnvironmentVariable("RDBUSER");
|
|
var dbpass = Environment.GetEnvironmentVariable("RDBPASS");
|
|
|
|
if (
|
|
string.IsNullOrWhiteSpace(dbname) ||
|
|
string.IsNullOrWhiteSpace(dbhost) ||
|
|
string.IsNullOrWhiteSpace(dbuser) ||
|
|
string.IsNullOrWhiteSpace(dbpass)
|
|
)
|
|
{
|
|
throw new Exception("Required envirnoment variables are not settings.");
|
|
}
|
|
|
|
var connectionString = $"database={dbname};server={dbhost};user={dbuser};password={dbpass};Allow User Variables=true;";
|
|
return new MySqlDatabase(connectionString, "MySqlConnector", new DateMapper());
|
|
}
|
|
} |