如何解决为什么实体消失后仍然仍然有效?
| 将新实体添加到TrackableCollection
(context.Entities.Add(entity)
)(EntityState = New)
不保存,从TrackableCollection
(context.Entities.Remove(entity)
)中删除添加的实体(EntityState =未修改)
保存。 (context.SubmitChanges()
)
我仍然从与实体关联的数据注释中获得验证错误,为什么?
public class Entity
{
[Required]
public string Name { get; set; }
}
解决方法
即使没有持久存储在商店中(它位于ObjectsRemovedFromCollection属性中),它也会跟踪已删除实体的集合。
此链接提供了有关幕后情况的更多信息:MSDN
我没有找到有关显式触发验证的详细信息,但是您可以在调用context.SubmitChanges()之前尝试调用AcceptChanges()或ObjectwegoToCollectionProperties.Clear()和ObjectsRemovedFromCollectionProperties.Clear()。
, 尝试
context.Entry(entity).State = EntityState.Detached
然后打电话
context.SaveChanges()
;)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。