当我向表中添加一行时,我希望我的SQL数据库表主键ID自动递增1。
我正在使用WCF服务,在DAL(数据访问层)中我试图在数据库中添加一行,但它不断传递' 0'作为主键ID。
这是我的DAL,你可以看到我正在设置所有的值。 注意 HOLIDAY_ID是SQL表的递增ID,我没有传递任何值:
public void AddHoliday(string STARTDATE, string ENDDATE)
{
HOLIDAY_EVENT _newHolidayEvent = new HOLIDAY_EVENT
{
USER_ID = 1,
HOLIDAY_TITLE = "Test1",
HOLIDAY_START = Convert.ToDateTime(STARTDATE),
HOLIDAY_END = Convert.ToDateTime(ENDDATE),
HOLIDAY_EVENT_STATE_ID = 2
};
_ENTITY.HOLIDAY_EVENT.Add(_newHolidayEvent);
_ENTITY.SaveChanges();
}
这是我的SQL表的设计:
以下是我设置HOLIDAY_ID增量的方式:
在我的DAL中,我需要传递给HOLIDAY_ID以使ID自动递增?
答案 0 :(得分:0)
您是否在模型中设置了DatabaseGenerated(DatabaseGeneratedOption.Identity)
?
例如:
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int HOLIDAY_ID { get; set; }
HOLIDAY_ID
致电后, SaveChanges()
应该可用。