public void Add(OperationalSite operationalSite) { //Go to OperationalSiteRepository, add the new operationalSite and return the (new) OperationalSiteID repository.Add(operationalSite); //Go to AssetOwnerRepository and add a new Owner by adding the OperationalSite(ID) repositoryAssetOwner.AddAssetOwnerOperationalSite(operationalSite.OperationalSiteID); //no need to return anyting, that's why here keep void! }