所以我的设置如下: SupportTicket - 包含一个名为 Messages 的 SupportTicketMessag 列表。SupportTicketMessage - 包含一个 UserProfile 和一条消息
我正在尝试使用以下方法将 SupportTicketMessage 添加到我现有的 SupportTicket 列表中:
public void AddReply(string message, UserProfile author)
{
using (ContextDb db = new ContextDb())
{
SupportTicketMessage msg = new SupportTicketMessage(author, message);
Messages.Add(msg);
db.UserProfiles.Attach(Owner);
db.Entry(this).State = EntityState.Modified;
db.SaveChanges();
}
}
但是,每当我尝试这样做时,都会收到以下错误:
ObjectStateManager 中已存在具有相同键的对象。ObjectStateManager 无法跟踪具有相同键的多个对象。
在以下行:
db.Entry(this).State = EntityState.Modified;
总结一下:我正在向列表中添加一个对象,并希望将该对象保存到数据库中。我怎样才能做到这一点?