18 lines
744 B
C#
18 lines
744 B
C#
using Microsoft.EntityFrameworkCore;
|
|
using Microsoft.EntityFrameworkCore.Metadata.Builders;
|
|
using SportsDivision.Domain.Entities;
|
|
|
|
namespace SportsDivision.Infrastructure.Data.Configurations;
|
|
|
|
public class TournamentConfiguration : IEntityTypeConfiguration<Tournament>
|
|
{
|
|
public void Configure(EntityTypeBuilder<Tournament> builder)
|
|
{
|
|
builder.HasKey(t => t.TournamentId);
|
|
builder.Property(t => t.Name).IsRequired().HasMaxLength(200);
|
|
builder.Property(t => t.Status).HasConversion<string>().HasMaxLength(20);
|
|
builder.Property(t => t.SchoolLevel).HasConversion<string>().HasMaxLength(20);
|
|
builder.HasOne(t => t.Zone).WithMany().HasForeignKey(t => t.ZoneId).OnDelete(DeleteBehavior.SetNull);
|
|
}
|
|
}
|