private static IList <ManyToOneMapping> GetManyToOnes <T>(this NaturalIdPart <T> naturalIdPart)
        {
            naturalIdPart.ThrowIfNull("this");

            var manyToOnesField = naturalIdPart.GetType().GetField("manyToOnes", BindingFlags.Instance | BindingFlags.NonPublic);

            return((IList <ManyToOneMapping>)manyToOnesField.GetValue(naturalIdPart));
        }
        private static IList <PropertyMapping> GetProperties <T>(this NaturalIdPart <T> naturalIdPart)
        {
            naturalIdPart.ThrowIfNull("this");

            var propertiesField = naturalIdPart.GetType().GetField("properties", BindingFlags.Instance | BindingFlags.NonPublic);

            return((IList <PropertyMapping>)propertiesField.GetValue(naturalIdPart));
        }