24 lines
748 B
C#
24 lines
748 B
C#
using Microsoft.EntityFrameworkCore;
|
|
using Microsoft.EntityFrameworkCore.Metadata.Builders;
|
|
|
|
namespace labdb.Models;
|
|
|
|
public record TestSynonymId : EntityIdBase<TestSynonymId>;
|
|
|
|
public class TestSynonym : EntityBase<TestSynonymId>
|
|
{
|
|
public TestId TestId { get; init; } = null!;
|
|
public Test Test { get; init; } = null!;
|
|
public string Name { get; set; } = null!;
|
|
}
|
|
|
|
public class TestSynonymConfiguration : EntityBaseConfiguration<TestSynonym, TestSynonymId>
|
|
{
|
|
public override void Configure(EntityTypeBuilder<TestSynonym> builder)
|
|
{
|
|
base.Configure(builder);
|
|
|
|
builder.HasIndex(x => x.Name, "name").IsUnique();
|
|
builder.HasIndex(x => x.Name, "name_trgm").HasMethod("gin").HasOperators("gin_trgm_ops");
|
|
}
|
|
} |