Blog
27 строк · 871.0 Байт
1using Blog.Domain.Entities;2using Microsoft.EntityFrameworkCore;3using Microsoft.EntityFrameworkCore.Metadata.Builders;4
5namespace Blog.Persistence.Configurations;6
7public sealed class PostConfiguration : IEntityTypeConfiguration<Post>8{
9public void Configure(EntityTypeBuilder<Post> builder)10{11builder
12.HasMany(post => post.Tags)13.WithMany(tag => tag.Posts);14
15builder
16.HasOne(post => post.User)17.WithMany(user => user.Posts)18.HasForeignKey(post => post.UserId);19
20builder
21.HasMany(post => post.FavoriteByUsers)22.WithMany(user => user.FavoritePosts)23.UsingEntity<FavoritePost>(24l => l.HasOne<User>().WithMany().HasForeignKey(e => e.UserId),25r => r.HasOne<Post>().WithMany().HasForeignKey(e => e.PostId));26}27}