我有以下模型:
public class EventDetail
{
[Key][Column(Order = 1)] public int UserId { get; set; }
[Key][Column(Order = 2)] public int EventId { get; set; }
[Required(ErrorMessage="")] public string Details { get; set; }
}
起初我试图更新它,显然您无法更新具有 2 个主键(复合键)的实例。并被告知我必须将其删除然后重新插入。现在收集实例,然后尝试像这样将其从上下文中删除。
EventDetail e = myDbContext.EventDetails
.FirstOrDefault(e => e.EventId == 1 && e.UserId == 66);
myDbContext.EventDetails.Remove(e);
它会抛出这个错误:
属性 '' 是对象的关键信息的一部分,不能修改。