我们正在使用 EF 4.1
我们有不应保存的虚拟对象(.CanBeSaved = false)
我可以防止使用此代码保存对象
IEnumerable<ObjectStateEntry> changes = this.ObjectStateManager.GetObjectStateEntries(EntityState.Modified | EntityState.Added | EntityState.Deleted);
foreach (ObjectStateEntry stateEntryEntity in changes)
if (!((MyPersistentEntityClass)stateEntryEntity.Entity).CanBeSaved)
stateEntryEntity.ChangeState(EntityState.Unchanged);
但现在它失败了,因为 EF 仍在尝试将新关系保存在添加的对象上。
我如何告诉 EF 不要保存新的关系?
** 更多信息 **
问题是有时我们想保存相关对象,而其他时候我们不想保存相关对象
假设我们有一个存储图像的产品对象,我们想保存这两个对象。但是,如果产品是 NullImage 类型的图像(我们的自定义对象,具有默认属性),我们不想保存 NullImage 对象(其中 .CanBeSaved 为 false)
我们不想只在这种情况下保存图像或关系谢谢