static void AddRemoteEmployees(IWriteOnlyRepository <RemoteEmployee> repository) { //some operations only valid for RemoteEmployee //OnlyRemoteEmployeeMethod(remoteEmployee) repository.Insert(new RemoteEmployee("Andrew", "Canada")); repository.Insert(new RemoteEmployee("Carol", "UK")); }