datenbank immer automatisch updaten
This commit is contained in:
@@ -22,7 +22,7 @@ using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using ReallifeGamemode.Database.Entities;
|
||||
using ReallifeGamemode.Services;
|
||||
|
||||
using System.Threading;
|
||||
|
||||
/**
|
||||
* @overview Life of German Reallife - Main Class (Main.cs)
|
||||
@@ -44,6 +44,36 @@ namespace ReallifeGamemode.Server
|
||||
[ServerEvent(Event.ResourceStart)]
|
||||
public void OnResourceStart()
|
||||
{
|
||||
using var dbContext = new DatabaseContext(true);
|
||||
|
||||
var pendingMigrations = dbContext.Database.GetPendingMigrations();
|
||||
|
||||
if (!pendingMigrations.Any())
|
||||
{
|
||||
System.Console.WriteLine("No migrations to apply");
|
||||
}
|
||||
else
|
||||
{
|
||||
System.Console.WriteLine("Applying {0} migrations", pendingMigrations.Count());
|
||||
foreach (var migration in pendingMigrations)
|
||||
{
|
||||
System.Console.WriteLine("\t{0}", migration);
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
dbContext.Database.Migrate();
|
||||
}
|
||||
catch (System.Exception e)
|
||||
{
|
||||
System.Console.WriteLine("Error while updating database: {0}", e.ToString());
|
||||
System.Console.ReadLine();
|
||||
System.Environment.Exit(1);
|
||||
}
|
||||
|
||||
System.Console.WriteLine("Migrations successfull");
|
||||
}
|
||||
|
||||
var methods = Assembly.GetExecutingAssembly()
|
||||
.GetTypes()
|
||||
.SelectMany(t => t.GetMethods())
|
||||
|
||||
Reference in New Issue
Block a user