public void IsOptional_should_return_true_when_end_kind_is_optional() { var associationEnd = new AssociationEndMember("E", new EntityType()) { RelationshipMultiplicity = RelationshipMultiplicity.ZeroOrOne }; Assert.True(associationEnd.IsOptional()); }
public static bool TryGuessPrincipalAndDependentEnds( this AssociationType associationType, out AssociationEndMember principalEnd, out AssociationEndMember dependentEnd) { principalEnd = dependentEnd = (AssociationEndMember)null; AssociationEndMember sourceEnd = associationType.SourceEnd; AssociationEndMember targetEnd = associationType.TargetEnd; if (sourceEnd.RelationshipMultiplicity != targetEnd.RelationshipMultiplicity) { principalEnd = sourceEnd.IsRequired() || sourceEnd.IsOptional() && targetEnd.IsMany() ? sourceEnd : targetEnd; dependentEnd = principalEnd == sourceEnd ? targetEnd : sourceEnd; } return(principalEnd != null); }