Files
magman/MagMan.Data.Admin/DbConfig.cs
T
2024-01-15 17:26:02 +01:00

83 lines
2.7 KiB
C#

using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MagMan.Data.Admin
{
public static class DbConfig
{
#region Public Fields
public static string DATABASE_NAME = "MagMan_Admin";
public static int DATABASE_PROCESS_TIMEOUT = 5;
public static string DATABASE_PWD = "viad@nte16!";
public static string DATABASE_SERV = "127.0.0.1";
public static string DATABASE_USER = "MagMan_DbUser";
#endregion Public Fields
#region Public Properties
/// <summary>
/// DB Connection string per azioni amministrative
/// </summary>
public static string ADMIN_CONNECTION_STRING { get; set; } = "";
/// <summary>
/// DB Connection string
/// </summary>
public static string CONNECTION_STRING { get; set; } = "";
#endregion Public Properties
#region Public Methods
public static bool CheckCustDb(int masterKey)
{
// esecuzione script di install locale
return DbAdmin.CheckCreateCustDb(masterKey);
}
public static bool CheckUser(string nKey, string sKey)
{
// esecuzione script di install locale
return DbAdmin.CheckCreateUser(DATABASE_USER, DATABASE_PWD, DATABASE_NAME);
}
public static bool ExecMigrationIdentity()
{
// esecuzione migrazione
var migrateTask = Task.Run(async () => await DbAdmin.MigrateDbIdentity());
migrateTask.Wait();
return migrateTask.Result;
}
public static bool ExecMigrationMultiTenant()
{
// esecuzione migrazione
var migrateTask = Task.Run(async () => await DbAdmin.MigrateDbMultiTenant());
migrateTask.Wait();
return migrateTask.Result;
}
public static void InitDb(string server)
{
DATABASE_SERV = server;
// tutto fisso x gestione utenti
CONNECTION_STRING = $"Server={DATABASE_SERV};port=3306;database={DATABASE_NAME};uid={DATABASE_USER};pwd={DATABASE_PWD};sslmode=None;";
// stringa admin con utente admin dell'applicazione (già creato)...
ADMIN_CONNECTION_STRING = $"Server={DATABASE_SERV};port=3306;database=mysql;uid={DATABASE_USER};pwd={DATABASE_PWD};sslmode=None;";
}
public static ServerVersion MysqlServerVersion(string connString)
{
ServerVersion serverVersion = ServerVersion.AutoDetect(connString);
return serverVersion;
}
#endregion Public Methods
}
}