如何解决迁移不适用于所有外键的 ON CASCADE DELETE 行为
我正在使用 Entity Framework Core 5 并且我正在测试表关系。 使用这两个类作为实体
public class Absenta
{
public int id { get; set; }
public DateTime dataAbsemta { get; set; }
public bool Motivata { get; set; }
public string UserID { get; set; }
public ApplicationUser User { get; set; }
public int TrainingID { get; set; }
public Training Training { get; set; }
}
public class Training
{
public int TrainingID { get; set; }
[displayName("Training")]
public string Name { get; set; }
public string FilePath { get; set; }
[displayName("Clasa")]
public string NumeClasa { get; set; }
[displayName("Sala")]
public string NumeSala { get; set; }
[displayName("Data incepere : ")]
[DataType(DataType.Date)]
public DateTime DataInceput { get; set; }
[displayName("Data sfarsit : ")]
[DataType(DataType.Date)]
public DateTime DataSfarsit { get; set; }
public ICollection<Absenta> absente { get; set; }
}
CONSTRAINT [PK_Absente]
PRIMARY KEY CLUSTERED ([id] ASC),CONSTRAINT [FK_Absente_AspNetUsers_UserID]
FOREIGN KEY ([UserID]) REFERENCES [dbo].[AspNetUsers] ([Id]),CONSTRAINT [FK_Absente_Traininguri_TrainingID]
FOREIGN KEY ([TrainingID]) REFERENCES [dbo].[Traininguri] ([TrainingID])
ON DELETE CASCADE
迁移工作完美,创建了表和外键,但对于 UserID
外键,它默认不应用 ON DELETE CASCADE
行为。
有什么方法可以将其设置为类的默认值?我试图避免为每个表手动设置它。
解决方法
想出了解决办法。
您所要做的就是使用 [Required]
数据注释:
[Required]
public string UserID { get; set; }
public ApplicationUser User { get; set; }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。