/// <summary> /// Applies this has many to many convention to the specified <see cref = "IManyToManyCollectionInstance" />. /// </summary> /// <param name="instance">An <see cref = "IManyToManyCollectionInstance" />.</param> public void Apply(IManyToManyCollectionInstance instance) { if (instance == null) { throw new ArgumentNullException("instance"); } instance.Key.Column(instance.EntityType.Name + "Id"); instance.Relationship.Column(instance.ChildType.Name + "Id"); instance.AsBag(); instance.Cascade.All(); if (instance.OtherSide == null) { return; } instance.OtherSide.Key.Column(instance.ChildType.Name + "Id"); instance.OtherSide.Relationship.Column(instance.EntityType.Name + "Id"); instance.OtherSide.AsBag(); instance.OtherSide.Cascade.All(); }