using AccountManagement.Domain.RoleAgg; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Metadata.Builders; namespace AccountMangement.Infrastructure.EFCore.Mappings; public class RoleMapping : IEntityTypeConfiguration { public void Configure(EntityTypeBuilder builder) { builder.ToTable("Roles"); builder.HasKey(x => x.id); builder.Property(x => x.Name).HasMaxLength(100).IsRequired(); builder.OwnsMany(x => x.Permissions, navigationBuilder => { navigationBuilder.HasKey(x => x.Id); navigationBuilder.ToTable("RolePermissions"); navigationBuilder.Ignore(x => x.Name); navigationBuilder.WithOwner(x => x.Role); }); } }