35 lines
927 B
C#
35 lines
927 B
C#
using Domain.Entities;
|
|
using Microsoft.EntityFrameworkCore;
|
|
using Microsoft.EntityFrameworkCore.Metadata.Builders;
|
|
using Microsoft.Extensions.Logging;
|
|
|
|
namespace Persistence.Configurations
|
|
{
|
|
public class StreetConfiguration : IEntityTypeConfiguration<Street>
|
|
{
|
|
public void Configure(EntityTypeBuilder<Street> builder)
|
|
{
|
|
builder.HasKey(s => s.Id);
|
|
|
|
builder.Property(s => s.Name)
|
|
.IsRequired()
|
|
.HasMaxLength(100);
|
|
|
|
builder.Property(s => s.Index)
|
|
.IsRequired();
|
|
|
|
builder.Property(s => s.OkatoCode)
|
|
.IsRequired();
|
|
|
|
builder.Property(s => s.TaxCode)
|
|
.IsRequired();
|
|
|
|
builder.HasOne(s => s.City)
|
|
.WithMany(c => c.Streets)
|
|
.HasForeignKey(s => s.CityId)
|
|
.OnDelete(DeleteBehavior.Cascade); ;
|
|
}
|
|
}
|
|
}
|
|
|