EFUtility.CodeGenerationTools.MetadataTools.Inverse C# (CSharp) Method

Inverse() public method

Returns the NavigationProperty that is the other end of the same association set if it is available, otherwise it returns null.
public Inverse ( System.Data.Metadata.Edm.NavigationProperty navProperty ) : System.Data.Metadata.Edm.NavigationProperty
navProperty System.Data.Metadata.Edm.NavigationProperty
return System.Data.Metadata.Edm.NavigationProperty
        public NavigationProperty Inverse(NavigationProperty navProperty)
        {
            if (navProperty == null)
            {
                return null;
            }

            EntityType toEntity = navProperty.ToEndMember.GetEntityType();
            return toEntity.NavigationProperties
                .SingleOrDefault(n => Object.ReferenceEquals(n.RelationshipType, navProperty.RelationshipType) && !Object.ReferenceEquals(n, navProperty));
        }