diff options
Diffstat (limited to 'api/WhatApi/Database/Tables/Place.cs')
| -rw-r--r-- | api/WhatApi/Database/Tables/Place.cs | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/api/WhatApi/Database/Tables/Place.cs b/api/WhatApi/Database/Tables/Place.cs new file mode 100644 index 0000000..2914aa7 --- /dev/null +++ b/api/WhatApi/Database/Tables/Place.cs @@ -0,0 +1,21 @@ +namespace WhatApi.Database.Tables; + +public class Place : BaseAuditableEntity +{ + public Guid Id { get; set; } + public Guid ContentId { get; set; } + public Content Content { get; set; } = null!; + public required Point Location { get; set; } +} + +public class PlaceConfiguration : IEntityTypeConfiguration<Place> +{ + public void Configure(EntityTypeBuilder<Place> builder) { + builder.ToTable("place"); + builder.HasKey(x => x.Id); + builder.Property(x => x.Location).IsRequired(); + builder.HasOne(x => x.Content); + builder.Property(x => x.Location).HasColumnType($"geometry(point,{Constants.Wgs84SpatialReferenceId})"); + builder.HasIndex(x => x.Location).HasMethod("gist"); + } +} |
