【发布时间】:2016-07-05 00:00:55
【问题描述】:
我有以下型号:
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 = {"不能将 NULL 值插入到列 'Id' 中, 表'StradaDataReview.dbo.UOSChangeLog';列不允许 空值。 INSERT 失败。\r\n语句已终止。"}
如何自动增加Id 列?
【问题讨论】:
标签: c# asp.net entity-framework