1
This commit is contained in:
@@ -57,26 +57,13 @@ namespace TechHelper.Context.Configuration
|
||||
.HasForeignKey(a => a.CreatorId)
|
||||
.IsRequired(); // CreatedBy 是必填的,对应 [Required] 在外键属性上
|
||||
|
||||
// 关系: Assignment (一) 到 AssignmentClass (多)
|
||||
// 假设 AssignmentClass 实体包含一个名为 AssignmentId 的外键属性
|
||||
builder.HasMany(a => a.AssignmentClasses)
|
||||
.WithOne(ac => ac.Assignment) // AssignmentClass 没有指向 Assignment 的导航属性 (或我们不知道)
|
||||
.HasForeignKey("AssignmentId") // 指定外键名称为 AssignmentId
|
||||
.OnDelete(DeleteBehavior.Cascade); // 如果 Assignment 被删除,关联的 AssignmentClass 也会被删除
|
||||
|
||||
// 关系: Assignment (一) 到 AssignmentAttachment (多)
|
||||
// 假设 AssignmentAttachment 实体包含一个名为 AssignmentId 的外键属性
|
||||
builder.HasMany(a => a.AssignmentAttachments)
|
||||
.WithOne(aa => aa.Assignment)
|
||||
.HasForeignKey("AssignmentId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
// 关系: Assignment (一) 到 Submission (多)
|
||||
// 假设 Submission 实体包含一个名为 AssignmentId 的外键属性
|
||||
builder.HasMany(a => a.Submissions)
|
||||
.WithOne(s => s.Assignment)
|
||||
.HasForeignKey("AssignmentId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
builder.HasOne(a=>a.ExamStruct)
|
||||
.WithOne()
|
||||
.HasForeignKey<Assignment>(a=>a.ExamStructId)
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user