Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Integration db #1142

Merged
merged 2 commits into from
Jan 16, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions BuildingRegistry.sln
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BuildingRegistry.Consumer.R
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BuildingRegistry.Snapshot.Verifier", "src\BuildingRegistry.Snapshot.Verifier\BuildingRegistry.Snapshot.Verifier.csproj", "{6F18B5C9-0E57-4352-B320-7976094B0738}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BuildingRegistry.Projections.Integration", "src\BuildingRegistry.Projections.Integration\BuildingRegistry.Projections.Integration.csproj", "{2CD597C6-43AB-4AB8-AF3A-5AC186AB92A3}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Expand Down Expand Up @@ -184,6 +186,10 @@ Global
{6F18B5C9-0E57-4352-B320-7976094B0738}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6F18B5C9-0E57-4352-B320-7976094B0738}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6F18B5C9-0E57-4352-B320-7976094B0738}.Release|Any CPU.Build.0 = Release|Any CPU
{2CD597C6-43AB-4AB8-AF3A-5AC186AB92A3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2CD597C6-43AB-4AB8-AF3A-5AC186AB92A3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2CD597C6-43AB-4AB8-AF3A-5AC186AB92A3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2CD597C6-43AB-4AB8-AF3A-5AC186AB92A3}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand Down Expand Up @@ -214,6 +220,7 @@ Global
{72C98F9C-C576-4DFC-BAD6-4249E2AB64F1} = {1A034126-30E6-416B-BB2E-F5786E07B178}
{7ADEA3CC-89A7-40B2-936A-3DC0BBF755B5} = {24B47154-C5F0-4356-B059-49A1E72C38A6}
{6F18B5C9-0E57-4352-B320-7976094B0738} = {24B47154-C5F0-4356-B059-49A1E72C38A6}
{2CD597C6-43AB-4AB8-AF3A-5AC186AB92A3} = {24B47154-C5F0-4356-B059-49A1E72C38A6}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {65FA30D5-DDFC-40EC-9BC9-3BF93D1B430F}
Expand Down
26 changes: 17 additions & 9 deletions paket.dependencies
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ nuget Microsoft.Extensions.Http.Polly 6.0.3

// For more healtchecks, look at https://github.com/Xabaril/AspNetCore.Diagnostics.HealthChecks
nuget AspNetCore.HealthChecks.SqlServer 6.0.2
nuget AspNetCore.HealthChecks.NpgSql 6.0.2

nuget Dapper 2.0.123
nuget AsyncEnumerator 4.0.2
Expand All @@ -18,10 +19,15 @@ nuget MediatR.Contracts 2.0.1
nuget MediatR.Extensions.Microsoft.DependencyInjection 10.0.1

nuget Microsoft.EntityFrameworkCore.SqlServer.NetTopologySuite 6.0.3
nuget Npgsql.EntityFrameworkCore.PostgreSQL.NetTopologySuite 6.0.3
nuget NetTopologySuite 2.4.0

nuget NodaTime 3.1.6
nuget Microsoft.EntityFrameworkCore.Design 6.0.3

nuget Npgsql.EntityFrameworkCore.PostgreSQL 6.0.3
nuget Npgsql.EntityFrameworkCore.PostgreSQL.Design 2.0.0-preview1

nuget AWSSDK.S3 3.7.103.26
nuget AWSSDK.Extensions.NETCore.Setup 3.7.5
nuget AWSSDK.ECS 3.7.108
Expand Down Expand Up @@ -58,15 +64,17 @@ nuget Be.Vlaanderen.Basisregisters.MessageHandling.Kafka.Producer 4.8.3
nuget Be.Vlaanderen.Basisregisters.MessageHandling.Kafka.Consumer 4.8.3
nuget Be.Vlaanderen.Basisregisters.MessageHandling.Kafka.Consumer.SqlServer 4.8.3

nuget Be.Vlaanderen.Basisregisters.ProjectionHandling.LastChangedList 11.0.7
nuget Be.Vlaanderen.Basisregisters.ProjectionHandling.SqlStreamStore 11.0.7
nuget Be.Vlaanderen.Basisregisters.ProjectionHandling.SqlStreamStore.Autofac 11.0.7
nuget Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner 11.0.7
nuget Be.Vlaanderen.Basisregisters.ProjectionHandling.Connector.Testing 11.0.7
nuget Be.Vlaanderen.Basisregisters.ProjectionHandling.Testing.Xunit 11.0.7
nuget Be.Vlaanderen.Basisregisters.ProjectionHandling.Syndication 11.0.7

nuget Be.Vlaanderen.Basisregisters.Projector 12.0.1
nuget Be.Vlaanderen.Basisregisters.ProjectionHandling.LastChangedList 12.0.1
nuget Be.Vlaanderen.Basisregisters.ProjectionHandling.SqlStreamStore 12.0.1
nuget Be.Vlaanderen.Basisregisters.ProjectionHandling.SqlStreamStore.Autofac 12.0.1
nuget Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner 12.0.1
nuget Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.SqlServer 12.0.1
nuget Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.Npgsql 12.0.1
nuget Be.Vlaanderen.Basisregisters.ProjectionHandling.Connector.Testing 12.0.1
nuget Be.Vlaanderen.Basisregisters.ProjectionHandling.Testing.Xunit 12.0.1
nuget Be.Vlaanderen.Basisregisters.ProjectionHandling.Syndication 12.0.1

nuget Be.Vlaanderen.Basisregisters.Projector 13.1.0

nuget Be.Vlaanderen.Basisregisters.DataDog.Tracing.Autofac 5.0.3
nuget Be.Vlaanderen.Basisregisters.DataDog.Tracing.AspNetCore 5.0.3
Expand Down
105 changes: 81 additions & 24 deletions paket.lock

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@ namespace BuildingRegistry.Consumer.Address
using System.IO;
using System.Linq;
using System.Reflection;
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.MigrationExtensions;
using Building.Datastructures;
using Be.Vlaanderen.Basisregisters.EntityFrameworkCore.EntityTypeConfiguration;
using Be.Vlaanderen.Basisregisters.MessageHandling.Kafka.Consumer.SqlServer;
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.SqlServer.MigrationExtensions;
using Building;
using Building.Datastructures;
using BuildingRegistry.Infrastructure;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Design;
using Microsoft.Extensions.Configuration;
using Be.Vlaanderen.Basisregisters.EntityFrameworkCore.EntityTypeConfiguration;
using Be.Vlaanderen.Basisregisters.MessageHandling.Kafka.Consumer.SqlServer;

public class ConsumerAddressContext : SqlServerConsumerDbContext<ConsumerAddressContext>, IAddresses
{
Expand Down
2 changes: 1 addition & 1 deletion src/BuildingRegistry.Consumer.Address/paket.references
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ Be.Vlaanderen.Basisregisters.MessageHandling.Kafka.Producer
Be.Vlaanderen.Basisregisters.MessageHandling.Kafka.Consumer.SqlServer

Be.Vlaanderen.Basisregisters.ProjectionHandling.Connector
Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner
Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.SqlServer
Be.Vlaanderen.Basisregisters.ProjectionHandling.SqlStreamStore.Autofac

Serilog
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ namespace BuildingRegistry.Consumer.Read.Parcel
using System.Threading;
using System.Threading.Tasks;
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner;
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.MigrationExtensions;
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.SqlServer.MigrationExtensions;
using BuildingRegistry.Infrastructure;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Design;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ Be.Vlaanderen.Basisregisters.GrAr.Contracts
Be.Vlaanderen.Basisregisters.MessageHandling.Kafka.Consumer

Be.Vlaanderen.Basisregisters.ProjectionHandling.Connector
Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner
Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.SqlServer

Serilog
Serilog.Settings.Configuration
Expand Down
2 changes: 2 additions & 0 deletions src/BuildingRegistry.Infrastructure/Schema.cs
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ public static class Schema
public const string BackOfficeProjections = "BuildingRegistryBackOfficeProjections";
public const string Producer = "BuildingRegistryProducer";
public const string ProducerSnapshotOslo = "BuildingRegistryProducerSnapshotOslo";
public const string Integration = "integration_building";
}

public static class MigrationTables
Expand All @@ -35,5 +36,6 @@ public static class MigrationTables
public const string MigratorProjection = "__EFMigrationsHistoryMigrationProjection";
public const string Producer = "__EFMigrationsHistoryProducer";
public const string ProducerSnapshotOslo = "__EFMigrationsHistoryProducerSnapshotOslo";
public const string Integration = "__EFMigrationsHistory";
}
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
namespace BuildingRegistry.Migrator.Building.Projections
{
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner;
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.SqlServer;
using BuildingRegistry.Infrastructure;
using Microsoft.EntityFrameworkCore;

Expand All @@ -17,7 +18,7 @@ public MigratorProjectionContext(DbContextOptions<MigratorProjectionContext> opt
public override string ProjectionStateSchema => Schema.MigrateBuilding;
}

public class MigratorProjectionContextFactory : RunnerDbContextMigrationFactory<MigratorProjectionContext>
public class MigratorProjectionContextFactory : SqlServerRunnerDbContextMigrationFactory<MigratorProjectionContext>
{
public MigratorProjectionContextFactory()
: this("Events")
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
namespace BuildingRegistry.Producer.Snapshot.Oslo
{
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner;
using Microsoft.EntityFrameworkCore;
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.SqlServer;
using BuildingRegistry.Infrastructure;
using Microsoft.EntityFrameworkCore;

public class ProducerContextMigrationFactory : RunnerDbContextMigrationFactory<ProducerContext>
public class ProducerContextMigrationFactory : SqlServerRunnerDbContextMigrationFactory<ProducerContext>
{
public ProducerContextMigrationFactory()
: base("ProducerSnapshotProjectionsAdmin", HistoryConfiguration) { }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,13 @@ namespace BuildingRegistry.Producer.Snapshot.Oslo
using System;
using Autofac;
using Be.Vlaanderen.Basisregisters.DataDog.Tracing.Sql.EntityFrameworkCore;
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.MigrationExtensions;
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.SqlServer.MigrationExtensions;
using BuildingRegistry.Infrastructure;
using Microsoft.Data.SqlClient;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using BuildingRegistry.Infrastructure;

public class ProducerModule : Module
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ Be.Vlaanderen.Basisregisters.DataDog.Tracing.Sql
Be.Vlaanderen.Basisregisters.GrAr.Legacy
Be.Vlaanderen.Basisregisters.GrAr.Oslo
Be.Vlaanderen.BasisRegisters.MessageHandling.Kafka.Producer
Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.SqlServer
Be.Vlaanderen.Basisregisters.ProjectionHandling.SqlStreamStore.Autofac
Be.Vlaanderen.Basisregisters.Projector

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ namespace BuildingRegistry.Producer.Infrastructure.Modules
using Be.Vlaanderen.Basisregisters.EventHandling.Autofac;
using Be.Vlaanderen.Basisregisters.MessageHandling.Kafka;
using Be.Vlaanderen.Basisregisters.MessageHandling.Kafka.Producer;
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.MigrationExtensions;
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.SqlServer.MigrationExtensions;
using Be.Vlaanderen.Basisregisters.ProjectionHandling.SqlStreamStore.Autofac;
using Be.Vlaanderen.Basisregisters.Projector;
using Be.Vlaanderen.Basisregisters.Projector.ConnectedProjections;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
namespace BuildingRegistry.Producer
{
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner;
using Microsoft.EntityFrameworkCore;
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.SqlServer;
using BuildingRegistry.Infrastructure;
using Microsoft.EntityFrameworkCore;

public class ProducerContextMigrationFactory : RunnerDbContextMigrationFactory<ProducerContext>
public class ProducerContextMigrationFactory : SqlServerRunnerDbContextMigrationFactory<ProducerContext>
{
public ProducerContextMigrationFactory()
: base("ProducerProjectionsAdmin", HistoryConfiguration) { }
Expand Down
1 change: 1 addition & 0 deletions src/BuildingRegistry.Producer/paket.references
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ Be.Vlaanderen.Basisregisters.EventHandling.Autofac
Be.Vlaanderen.Basisregisters.DataDog.Tracing.Sql
Be.Vlaanderen.Basisregisters.GrAr.Contracts
Be.Vlaanderen.BasisRegisters.MessageHandling.Kafka.Producer
Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.SqlServer
Be.Vlaanderen.Basisregisters.ProjectionHandling.SqlStreamStore.Autofac
Be.Vlaanderen.Basisregisters.Projector

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
namespace BuildingRegistry.Projections.BackOffice
{
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner;
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.SqlServer;
using BuildingRegistry.Infrastructure;
using Microsoft.EntityFrameworkCore;

Expand All @@ -17,7 +18,7 @@ public BackOfficeProjectionsContext(DbContextOptions<BackOfficeProjectionsContex
{ }
}

public sealed class BackOfficeProjectionsContextMigrationFactory : RunnerDbContextMigrationFactory<BackOfficeProjectionsContext>
public sealed class BackOfficeProjectionsContextMigrationFactory : SqlServerRunnerDbContextMigrationFactory<BackOfficeProjectionsContext>
{
public BackOfficeProjectionsContextMigrationFactory() : base("BackOfficeProjectionsAdmin", HistoryConfiguration)
{ }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
{
using System;
using Be.Vlaanderen.Basisregisters.DataDog.Tracing.Sql.EntityFrameworkCore;
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.MigrationExtensions;
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.SqlServer.MigrationExtensions;
using BuildingRegistry.Infrastructure;
using Microsoft.Data.SqlClient;
using Microsoft.EntityFrameworkCore;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Be.Vlaanderen.Basisregisters.EventHandling.Autofac
Be.Vlaanderen.Basisregisters.DataDog.Tracing.Sql
Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner
Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.SqlServer
Be.Vlaanderen.Basisregisters.ProjectionHandling.SqlStreamStore.Autofac
Be.Vlaanderen.Basisregisters.Projector

Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
namespace BuildingRegistry.Projections.Extract
{
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner;
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.SqlServer;
using Infrastructure;
using Microsoft.EntityFrameworkCore;

public class ExtractContextMigrationFactory : RunnerDbContextMigrationFactory<ExtractContext>
public class ExtractContextMigrationFactory : SqlServerRunnerDbContextMigrationFactory<ExtractContext>
{
public ExtractContextMigrationFactory() :
base("ExtractProjectionsAdmin", HistoryConfiguration)
Expand Down
8 changes: 4 additions & 4 deletions src/BuildingRegistry.Projections.Extract/ExtractModule.cs
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
namespace BuildingRegistry.Projections.Extract
{
using System;
using Microsoft.Data.SqlClient;
using Be.Vlaanderen.Basisregisters.DataDog.Tracing.Sql.EntityFrameworkCore;
using Autofac;
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.MigrationExtensions;
using Be.Vlaanderen.Basisregisters.DataDog.Tracing.Sql.EntityFrameworkCore;
using Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.SqlServer.MigrationExtensions;
using Infrastructure;
using Microsoft.Data.SqlClient;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
Expand Down Expand Up @@ -54,7 +54,7 @@ private static void RunOnSqlServer(
{
if (enableRetry)
sqlServerOptions.EnableRetryOnFailure();

sqlServerOptions.MigrationsHistoryTable(MigrationTables.Extract, Schema.Extract);
})
.UseExtendedSqlServerMigrations());
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Be.Vlaanderen.Basisregisters.EventHandling.Autofac
Be.Vlaanderen.Basisregisters.DataDog.Tracing.Sql
Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner
Be.Vlaanderen.Basisregisters.ProjectionHandling.Runner.SqlServer
Be.Vlaanderen.Basisregisters.ProjectionHandling.SqlStreamStore.Autofac
Be.Vlaanderen.Basisregisters.Shaperon
Be.Vlaanderen.Basisregisters.Shaperon.Geometries
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
namespace BuildingRegistry.Projections.Integration.Building.LatestItem
{
using System;
using Be.Vlaanderen.Basisregisters.GrAr.Common;
using Be.Vlaanderen.Basisregisters.Utilities;
using BuildingRegistry.Infrastructure;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
using NetTopologySuite.Geometries;
using NodaTime;

public sealed class BuildingLatestItem
{
public const string VersionTimestampBackingPropertyName = nameof(VersionTimestampAsDateTimeOffset);

public int BuildingPersistentLocalId { get; set; }
public string Status { get; set; }
public string OsloStatus { get; set; }
public string GeometryMethod { get; set; }
jvandaal marked this conversation as resolved.
Show resolved Hide resolved
public string OsloGeometryMethod { get; set; }
public Geometry Geometry { get; set; }
public string? NisCode { get; set; }
public bool IsRemoved { get; set; }

public string PuriId { get; set; }
public string Namespace { get; set; }

public string VersionAsString { get; set; }
private DateTimeOffset VersionTimestampAsDateTimeOffset { get; set; }
public Instant VersionTimestamp
{
get => Instant.FromDateTimeOffset(VersionTimestampAsDateTimeOffset);
set
{
VersionTimestampAsDateTimeOffset = value.ToDateTimeOffset();
VersionAsString = new Rfc3339SerializableDateTimeOffset(value.ToBelgianDateTimeOffset()).ToString();
}
}

public BuildingLatestItem()
{ }
}

public sealed class BuildingLatestItemConfiguration : IEntityTypeConfiguration<BuildingLatestItem>
{
public void Configure(EntityTypeBuilder<BuildingLatestItem> builder)
{
const string tableName = "building_latest_items";

builder
.ToTable(tableName, Schema.Integration) // to schema per type
.HasKey(x => x.BuildingPersistentLocalId);

builder.Property(x => x.BuildingPersistentLocalId).HasColumnName("building_persistent_local_id");
builder.Property(x => x.Status).HasColumnName("status");
builder.Property(x => x.OsloStatus).HasColumnName("oslo_status");
builder.Property(x => x.GeometryMethod).HasColumnName("geometry_method");
builder.Property(x => x.OsloGeometryMethod).HasColumnName("oslo_geometry_method");
builder.Property(x => x.Geometry).HasColumnName("geometry");
builder.Property(x => x.NisCode).HasColumnName("nis_code");
builder.Property(x => x.IsRemoved).HasColumnName("is_removed");
builder.Property(x => x.PuriId).HasColumnName("puri_id");
builder.Property(x => x.Namespace).HasColumnName("namespace");
builder.Property(x => x.VersionAsString).HasColumnName("version_as_string");
builder.Property(BuildingLatestItem.VersionTimestampBackingPropertyName).HasColumnName("version_timestamp");

builder.Ignore(x => x.VersionTimestamp);

builder.HasIndex(x => x.Status);
builder.HasIndex(x => x.OsloStatus);
builder.HasIndex(x => x.IsRemoved);
builder.HasIndex(x => x.NisCode);
builder.HasIndex(x => x.Geometry).HasMethod("GIST");
}
}
}
Loading
Loading