我在做交易。故障单包含ID(自动增量),type_ticket,ID_customer。
using (TransactionScope scope = new TransactionScope())
{
ticket addTicket = new ticket()
{
type_ticket = x,
ID_customer = idNum
};
db.ticket.Add(addTicket);
db.SaveChanges(); //error here
//... some other inserts to database
scope.Complete();
}
如果我第一次使用此交易,一切正常。但是,如果我第二次使用此事务添加第二张票,我有这个错误:
已成功提交对数据库的更改,但更新对象上下文时发生错误。 ObjectContext可能处于不一致状态。内部异常消息:AcceptChanges无法继续,因为对象的键值与ObjectStateManager中的另一个对象冲突。在调用AcceptChanges之前,请确保键值是唯一的。
有没有人知道我做错了什么?
修改
票证类代码:
public partial class ticket
{
public int ID { get; set; }
public int type_ticket { get; set; }
public int ID_customer { get; set; }
}
在我的数据库中是ticket.ID设置AUTO_INCREMENT