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

38 lines
1.1 KiB
C#

using IRaCIS.Core.Domain.Models;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
namespace IRaCIS.Core.Infra.EFCore.EntityConfigration
{
public class TrialUserConfigration : IEntityTypeConfiguration<TrialUser>
{
public void Configure(EntityTypeBuilder<TrialUser> builder)
{
builder
.HasMany(s => s.SiteList)
.WithOne(c => c.TrialUser)
.HasForeignKey(s => new { s.TrialId, s.UserId })
.HasPrincipalKey(c => new { c.TrialId, c.UserId });
}
}
public class SubjectCriteriaEvaluationConfigration : IEntityTypeConfiguration<SubjectCriteriaEvaluation>
{
public void Configure(EntityTypeBuilder<SubjectCriteriaEvaluation> builder)
{
builder
.HasMany(s => s.SubjectCriteriaEvaluationVisitFilterList)
.WithOne(c => c.SubjectCriteriaEvaluation)
.HasForeignKey(s => new { s.SubjectId, s.TrialReadingCriterionId })
.HasPrincipalKey(c => new { c.SubjectId, c.TrialReadingCriterionId });
}
}
}