gpt4 book ai didi

c# - 当一列值依赖于另一列值时 Entity Framework 代码首先约束

转载 作者:行者123 更新时间:2023-11-30 12:15:37 24 4
gpt4 key购买 nike

我有以下模型:

class RentOrder
{
public DateTime StartDate { get; set; }
public DateTime EndDate { get; set; }
}

如何在 Entity Framework Code First 中添加 StartDate 必须始终小于 EndDate 的约束?我知道的唯一方法是通过在覆盖的 Seed 方法中执行 SQL 命令来添加它。有没有更简单的方法,不用 SQL?

最佳答案

正如我在问题中提到的,现在解决这个问题的唯一方法是在 Seed 方法中编写 SQL 命令:

public class MyDatabaseInitializer : DropCreateDatabaseAlways<MyDatabaseContext>
{
protected override void Seed(MyDatabaseContext context)
{
context.Database.ExecuteSqlCommand(@"ALTER TABLE Orders
ADD CONSTRAINT C_Dates CHECK(EndDate > StartDate)");
}
}

然后在应用程序启动的某处调用:

Database.SetInitializer(new MyDatabaseInitializer());

关于c# - 当一列值依赖于另一列值时 Entity Framework 代码首先约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7070320/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com