irc-netcore-api/IRaCIS.Core.Infra.EFCore/EntityConfigration/AuditDocumentConfigration.cs

41 lines
1.4 KiB
C#

using IRaCIS.Core.Domain.Models;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
namespace IRaCIS.Core.Infra.EFCore.EntityConfigration
{
public class AuditDocumentConfigration : IEntityTypeConfiguration<AuditDocument>
{
public void Configure(EntityTypeBuilder<AuditDocument> builder)
{
builder.HasMany(r => r.AncestorList).WithOne(t => t.Descendant).HasForeignKey(f => f.DescendantId);
builder.HasMany(r => r.DescendantList).WithOne(t => t.Ancestor).HasForeignKey(f => f.AncestorId);
builder.HasMany(r => r.AuditDocumentOldVersionList).WithOne(t => t.MainAuditDocument).HasForeignKey(f => f.MainFileId);
// builder.HasOne(r => r.WordFileRecord)
//.WithOne(t => t.WordFileRecord)
//.HasForeignKey<TrialFile>(t => t.WordFileRecordId)
//.OnDelete(DeleteBehavior.Cascade);
// builder.HasOne(r => r.PDFFileRecord).WithOne().HasForeignKey<TrialFile>(f => f.TrialFileTypeId);
// builder.HasOne(r => r.WordFileRecord).WithOne().HasForeignKey<TrialFile>(f => f.TrialFileTypeId);
// builder.HasOne(r => r.SignFileRecord).WithOne().HasForeignKey<TrialFile>(f => f.TrialFileTypeId);
// builder.HasOne(r => r.HistoryFileRecord).WithOne().HasForeignKey<TrialFile>(f => f.TrialFileTypeId);
}
}
}