我有一个通过数据库生成的命名反馈
public partial class Feedback
{
public Nullable<byte> OverallExperienceFb { get; set; }
public Nullable<byte> FunFb { get; set; }
public Nullable<byte> FoodFb { get; set; }
public Nullable<byte> TravelFb { get; set; }
public Nullable<byte> PlanningFb { get; set; }
public Nullable<byte> MusicFb { get; set; }
public Nullable<byte> PlaceFb { get; set; }
public Nullable<byte> WeatherFb { get; set; }
public Nullable<int> Paid { get; set; }
public int ID{get; set;}
}
我后来在overallFb
上添加了范围0-5的约束如下: -
public partial class TravellerTripStatus
{
[Range(0,5)]
public Nullable<byte> OverallExperienceFb { get; set; }
}
此更改反映了GUI,因此编辑表单不允许从该范围内输入值,但是如何使此更改反映到数据库中(因此,检查的对比会自动获取添加到overallFB
表定义字段(?
当我尝试从模型生成数据库时,没有执行此类约束。
目前无法使用数据注释或流体API添加约束。但是解决方法是在您的configuration.cs文件中发出sql命令:
db.Database.ExecuteSqlCommand("ALTER TABLE TravellerTripStatus ADD CONSTRAINT CK_TravellerTripStatus_OverallExperienceFb CHECK (OverallExperienceFb BETWEEN 0 AND 5)");