我有以下型號:無法將NULL值插入列 'ID',實體框架
Services.StradaDataReview2Model.UOSChangeLog:
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
public int Accident_nr { get; set; }
public int Refnr { get; set; }
public int Action { get; set; }
public string Old_data { get; set; }
public string New_data { get; set; }
public DateTime SearchedFromDate { get; set; }
public DateTime SearchedToDate { get; set; }
public DateTime Changed { get; set; }
public string Username { get; set; }
public string Comment { get; set; }
Contracts.DataContracts.UOSChangeLog
public class UOSChangeLog
{
public int Id { get; set; }
public int Accident_nr { get; set; }
public int Refnr { get; set; }
public int Action { get; set; }
public string Old_data { get; set; }
public string New_data { get; set; }
public DateTime SearchedFromDate { get; set; }
public DateTime SearchedToDate { get; set; }
public DateTime Changed { get; set; }
public string Username { get; set; }
public string Comment { get; set; }
}
這裏是我如何插入:
internal static bool SaveUOSChangeLog(List<Contracts.DataContracts.UOSChangeLog> values, string user)
{
try
{
using (var ctx = new StradaDataReviewContext2())
{
var newVal = Mapper.Map<List<Contracts.DataContracts.UOSChangeLog>, List<Services.StradaDataReview2Model.UOSChangeLog>>(values);
foreach(var val in newVal)
{
val.Username = user;
val.Changed = DateTime.Now;
ctx.UOSChangeLog.Add(val);
}
ctx.SaveChanges();
return true;
}
}
}
當我運行的代碼,我得到以下錯誤:
InnerException = {"Cannot insert the value NULL into column 'Id', table 'StradaDataReview.dbo.UOSChangeLog'; column does not allow nulls. INSERT fails.\r\nThe statement has been terminated."}
我怎樣才能讓Id
列的自動增量?
非常感謝。 – Bryan