using System.ComponentModel; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Metadata.Builders; namespace labdb.Models; public record CountryId : EntityIdBase; public class Country : EntityBase { public string Name { get; init; } = null!; public string EnglishName { get; init; } = null!; public string Code { get; init; } = null!; public List Labs { get; set; } = new(); } public class CountryConfiguration : EntityBaseConfiguration { public override void Configure(EntityTypeBuilder builder) { base.Configure(builder); builder.HasIndex(x => x.Name, "name").IsUnique(); builder.HasIndex(x => x.Name, "name_trgm").HasMethod("gin").HasOperators("gin_trgm_ops"); builder.HasData( new Country { Name = "Deutschland", EnglishName = "Germany", Code = "DE" }, new Country { Name = "TEST", EnglishName = "TEST COUNTRY", Code = "TEST" } ); } }