Zum Abfragen von in Relation stehenden Datensätzen nutzt man sinnvollerweise die Relationsdefinitionen.

IQueryable<OrmBABase> parents = newMyData.RelatedParents;
IQueryable<OrmBABase> children = newMyData.RelatedChildren;
OrmRoleBase createdBy = newMyData.RelatedCreatedBy;

Auf einem Datensatz kann man die Quellen und die Ziele auch unabhängig von der Definition abfragen. Mit der Angabe einer Datentabelle oder Basis-Datentabelle schränkt man die Ergebnismenge auf diesen Typen ein. Falls man keine Kenntnisse über die beteiligten Datentabellen hat, wird. OrmBABase angegeben.

OrmCompany company = newMyData.GetSourcePrimary<OrmCompany>(EnumRelationTypeExtension.MyRelation);
Guid? companyOid = newMyData.GetSourcePrimaryOid(EnumRelationTypeExtension.MyRelation);
IQueryable<OrmBABase> sources = newMyData.GetSources<OrmBABase>(EnumRelationTypeExtension.MyRelation);
List<Guid> sourcesOids = newMyData.GetSourcesOids(EnumRelationTypeExtension.MyRelation);

Bei der Abfrage von Zielen wird immer eine Liste von Datensätzen zurückgegeben.

IQueryable<OrmMyDataTable> targets = company.GetTargets<OrmMyDataTable>(EnumRelationTypeExtension.MyRelation);

Unabhängig vom geladenen Datensatz kann man die in Relation stehenden Datensätze auch über die Api.Relation abfragen.

OrmCompany company = Api.Relation.GetSourcePrimary<OrmCompany>(newMyData.Oid, session, EnumRelationTypeExtension.MyRelation);
IQueryable<OrmBABase> sources = Api.Relation.GetSources<OrmBABase>(newMyData.Oid, session, EnumRelationTypeExtension.MyRelation);
IQueryable<OrmMyDataTable> targets = Api.Relation.GetTargets<OrmMyDataTable>(company.Oid, session, EnumRelationTypeExtension.MyRelation);