Planet model, started adding CSVHelper

This commit is contained in:
2024-07-19 19:08:37 +02:00
parent 469506d704
commit 1abf67fdb3
6 changed files with 162 additions and 3 deletions

View File

@ -0,0 +1,46 @@
using System.ComponentModel.DataAnnotations;
using CSV = CsvHelper.Configuration.Attributes;
namespace net.nehmer.sa.model;
public class Planet
{
[Key, CSV.Index(1)]
public required string Name { get; set; }
public string? Owner { get; set; }
public string? StarbaseType { get; set; }
public int ReportAge { get; set; } = 0;
public int? Population { get; set; }
public int? Value { get; set; }
public int? Mines { get; set; }
public int? Factories { get; set; }
public decimal? DefPercent { get; set; }
public int? SurfaceIronium { get; set; }
public int? SurfaceBoranium { get; set; }
public int? SurfaceGermanium { get; set; }
public int? MRIronium { get; set; }
public int? MRBoranium { get; set; }
public int? MRGermanium { get; set; }
public int? MCIronium { get; set; }
public int? MCBoranium { get; set; }
public int? MCGErmanium { get; set; }
public int? IroniumMC { get; set; }
public int? Resources { get; set; }
public decimal? Gravity { get; set; }
public decimal? Temperature { get; set; }
public decimal? Radiation { get; set; }
public decimal? GravityOrig { get; set; }
public decimal? TemperatureOrig { get; set; }
public decimal? RadiationOrig { get; set; }
public int? MaxTerraforming { get; set; }
public int? CapacityPercent { get; set; }
public int? ScanRange { get; set; }
public int? PenScanRange { get; set; }
public int? Driver { get; set; }
public int? DriverWarp { get; set; }
public string? RouteTarget { get; set; }
public int? GateRange { get; set; }
public int? GateMass { get; set; }
public int? PctDamage { get; set; }
}

View File

@ -0,0 +1,31 @@
using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using System.Numerics;
namespace net.nehmer.sa.model;
public class StarsDatabase(string DbPath) : DbContext
{
#region Configuration and Construction
public string DbPath { get; } = DbPath;
/// <summary>
/// Configure for SQLite and set the DB Path given.
/// </summary>
/// <param name="options">Options to update</param>
protected override void OnConfiguring(DbContextOptionsBuilder options)
=> options.UseSqlite($"Data Source={DbPath}");
#endregion
#region Entities
/// <summary>
/// List of all Planets read.
/// </summary>
public DbSet<Planet> Planets { get; set; }
#endregion
}