Started UI Rework for target game setup, started adding a Game master record and a CSV Loader service

This commit is contained in:
2024-09-15 22:10:44 +02:00
parent c339ca5d3f
commit 227d8a11d7
8 changed files with 84 additions and 36 deletions

View File

@ -0,0 +1,34 @@
using System.ComponentModel.DataAnnotations;
using System.Globalization;
namespace StarsAssistant.Model;
public class Game (string gamePath, string baseName)
{
/// <summary>
/// The base path in which all game files reside.
/// </summary>
public string GamePath { get; private set; } = gamePath;
/// <summary>
/// The base name without extensions of your game, inside the GamePath folder.
/// All dependant files are resolved using this name.
/// </summary>
public string BaseName { get; private set; } = baseName;
/// <summary>
/// The number of the player, for example identifying the pxx planet file.
/// </summary>
public int PlayerId { get; private set; }
/// <summary>
/// Combine into the DatabaseName
/// </summary>
public string DatabaseName => Path.Combine(GamePath, $"{BaseName}.sqlite");
/// <summary>
/// Search for Planet files using this pattern, will give you all pxx files.
/// </summary>
public string PlanetFileSearchPattern => Path.Combine(GamePath, $"{BaseName}.p*");
}

View File

@ -34,5 +34,10 @@ public class StarsDatabase(string DbPath) : DbContext
/// </summary>
public DbSet<Race> Race { get; set; }
/// <summary>
/// The record with all game metadata, will only contain a single line at all times.
/// </summary>
public DbSet<Game> Game { get; set; }
#endregion
}