public override void Process(RemovalContext context, AssociationInfo association, Entity removingObject, Entity target, Entity referencingObject, Entity referencedObject) { switch (association.Multiplicity) { case Multiplicity.ZeroToMany: case Multiplicity.OneToMany: case Multiplicity.ManyToMany: ReferentialActions.RemoveReference(association, referencingObject, referencedObject, null, context); break; } target.RemoveLaterInternal(EntityRemoveReason.Association); }
public override void Process(RemovalContext context, AssociationInfo association, Entity removingObject, Entity target, Entity referencingObject, Entity referencedObject) { switch (association.Multiplicity) { case Multiplicity.ZeroToOne: case Multiplicity.OneToOne: ReferentialActions.ClearReference(association, referencingObject, null, null, context); break; case Multiplicity.ManyToOne: ReferentialActions.RemoveReference(association.Reversed, referencedObject, referencingObject, null, context); break; case Multiplicity.ZeroToMany: case Multiplicity.OneToMany: case Multiplicity.ManyToMany: ReferentialActions.RemoveReference(association, referencingObject, referencedObject, null, context); break; } }