//partial void RunCustomLogicAfterInsert(ref entCM.SessionSpeaker newDBItem, ref IRepositoryActionResult<entCM.SessionSpeaker> result) {}

        //partial void RunCustomLogicAfterUpdatePatch(ref entCM.SessionSpeaker updatedDBItem, ref IRepositoryActionResult<entCM.SessionSpeaker> result) {}

        partial void RunCustomLogicAfterUpdatePut(ref entCM.SessionSpeaker updatedDBItem, ref IRepositoryActionResult <entCM.SessionSpeaker> result)
        {
            if (result.Status == Enums.RepositoryActionStatus.NotFound)
            {                   // An update/PUT was attempted when it should have been a create/POST.
                var localDBItem  = updatedDBItem;
                var insertResult = Utils.AsyncHelper.RunSync <IRepositoryActionResult <entCM.SessionSpeaker> >(() => Repo.InsertAsync(localDBItem));
                if (insertResult.Status == Enums.RepositoryActionStatus.Created)
                {                   // Insert worked
                    result = new RepositoryActionResult <entCM.SessionSpeaker>(insertResult.Entity, Enums.RepositoryActionStatus.Updated);
                }
            }
        }
 partial void RunCustomLogicOnGetEntityByPK(ref entCM.SessionSpeaker dbItem, int sessionId, int userProfileId, int numChildLevels);
 partial void RunCustomLogicBeforeUpdatePut(ref entCM.SessionSpeaker updatedDBItem, int sessionId, int userProfileId);
 partial void RunCustomLogicAfterUpdatePut(ref entCM.SessionSpeaker updatedDBItem, ref IRepositoryActionResult <entCM.SessionSpeaker> result);
 partial void RunCustomLogicAfterInsert(ref entCM.SessionSpeaker newDBItem, ref IRepositoryActionResult <entCM.SessionSpeaker> result);