public static void GetChild <T>(this SQLiteConnection conn, ref T element, PropertyInfo relationshipProperty) { var relationshipAttribute = relationshipProperty.GetAttribute <RelationshipAttribute>(); if (relationshipAttribute is OneToOneAttribute) { conn.GetOneToOneChild(ref element, relationshipProperty); } else if (relationshipAttribute is OneToManyAttribute) { conn.GetOneToManyChildren(ref element, relationshipProperty); } else if (relationshipAttribute is ManyToOneAttribute) { conn.GetManyToOneChild(ref element, relationshipProperty); } else if (relationshipAttribute is ManyToManyAttribute) { conn.GetManyToManyChildren(ref element, relationshipProperty); } else if (relationshipAttribute is TextBlobAttribute) { TextBlobOperations.GetTextBlobChild(ref element, relationshipProperty); } }