KoogleApp/src/Koogle.Infrastructure/Data/Configurations/TriggerConfiguration.cs

34 lines
835 B
C#

using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Koogle.Domain.Entities;
namespace Koogle.Infrastructure.Data.Configurations;
public class TriggerConfiguration : IEntityTypeConfiguration<Trigger>
{
public void Configure(EntityTypeBuilder<Trigger> builder)
{
builder.ToTable("Triggers");
builder.HasKey(x => x.Id);
builder.Property(x => x.Name)
.HasMaxLength(200)
.IsRequired();
builder.Property(x => x.ExpenseTriggerType)
.HasConversion<int>()
.IsRequired();
builder.HasIndex(x => x.ExpenseTriggerType);
builder.HasQueryFilter(x => !x.IsDeleted);
}
}