From 836c3aec6517ee1dd0d0aa0008704b1b800d23b3 Mon Sep 17 00:00:00 2001 From: Peace Date: Mon, 17 Jun 2024 17:04:01 +0900 Subject: [PATCH] db first modeling --- .../HelloBlazorServer.csproj | 7 +++ .../Models/BlazorServerDbContext.cs | 50 +++++++++++++++++++ .../Models/GangnamguPopulation.cs | 23 +++++++++ 3 files changed, 80 insertions(+) create mode 100644 HelloBlazorServer/HelloBlazorServer/Models/BlazorServerDbContext.cs create mode 100644 HelloBlazorServer/HelloBlazorServer/Models/GangnamguPopulation.cs diff --git a/HelloBlazorServer/HelloBlazorServer/HelloBlazorServer.csproj b/HelloBlazorServer/HelloBlazorServer/HelloBlazorServer.csproj index 340cf2e..61f24f7 100644 --- a/HelloBlazorServer/HelloBlazorServer/HelloBlazorServer.csproj +++ b/HelloBlazorServer/HelloBlazorServer/HelloBlazorServer.csproj @@ -10,8 +10,15 @@ + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + diff --git a/HelloBlazorServer/HelloBlazorServer/Models/BlazorServerDbContext.cs b/HelloBlazorServer/HelloBlazorServer/Models/BlazorServerDbContext.cs new file mode 100644 index 0000000..d51fba0 --- /dev/null +++ b/HelloBlazorServer/HelloBlazorServer/Models/BlazorServerDbContext.cs @@ -0,0 +1,50 @@ +using System; +using System.Collections.Generic; +using Microsoft.EntityFrameworkCore; + +namespace HelloBlazorServer.Models; + +public partial class BlazorServerDbContext : DbContext +{ + public BlazorServerDbContext() + { + } + + public BlazorServerDbContext(DbContextOptions options) + : base(options) + { + } + + public virtual DbSet GangnamguPopulations { get; set; } + + protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) +#warning To protect potentially sensitive information in your connection string, you should move it out of source code. You can avoid scaffolding the connection string by using the Name= syntax to read it from configuration - see https://go.microsoft.com/fwlink/?linkid=2131148. For more guidance on storing connection strings, see https://go.microsoft.com/fwlink/?LinkId=723263. + => optionsBuilder.UseNpgsql("Host=peacecloud.synology.me:25432;Database=blazor_server_db;Username=study;Password=Study1234!"); + + protected override void OnModelCreating(ModelBuilder modelBuilder) + { + modelBuilder.HasPostgresExtension("pg_catalog", "adminpack"); + + modelBuilder.Entity(entity => + { + entity.HasKey(e => e.Id).HasName("gangnamgu_population_pkey"); + + entity.ToTable("gangnamgu_population"); + + entity.Property(e => e.Id).HasColumnName("id"); + entity.Property(e => e.AdministrativeAgency) + .HasColumnType("character varying") + .HasColumnName("administrative_agency"); + entity.Property(e => e.FemalePopulation).HasColumnName("female_population"); + entity.Property(e => e.MalePopulation).HasColumnName("male_population"); + entity.Property(e => e.NumberOfHouseholds).HasColumnName("number_of_households"); + entity.Property(e => e.NumberOfPeoplePerHousehold).HasColumnName("number_of_people_per_household"); + entity.Property(e => e.SexRatio).HasColumnName("sex_ratio"); + entity.Property(e => e.TotalPopulation).HasColumnName("total_population"); + }); + + OnModelCreatingPartial(modelBuilder); + } + + partial void OnModelCreatingPartial(ModelBuilder modelBuilder); +} diff --git a/HelloBlazorServer/HelloBlazorServer/Models/GangnamguPopulation.cs b/HelloBlazorServer/HelloBlazorServer/Models/GangnamguPopulation.cs new file mode 100644 index 0000000..f36883d --- /dev/null +++ b/HelloBlazorServer/HelloBlazorServer/Models/GangnamguPopulation.cs @@ -0,0 +1,23 @@ +using System; +using System.Collections.Generic; + +namespace HelloBlazorServer.Models; + +public partial class GangnamguPopulation +{ + public string? AdministrativeAgency { get; set; } + + public int? TotalPopulation { get; set; } + + public int? MalePopulation { get; set; } + + public int? FemalePopulation { get; set; } + + public double? SexRatio { get; set; } + + public int? NumberOfHouseholds { get; set; } + + public double? NumberOfPeoplePerHousehold { get; set; } + + public int Id { get; set; } +}