protected async Task CreateApprovalObject(TEntity TEntity, Core.Models.Approval.Action action, bool isUpdate = false) { Approval approval = new Approval { Assembly = string.IsNullOrEmpty(action.Assembly) ? Assembly.GetExecutingAssembly().FullName : action.Assembly, ActionClass = string.IsNullOrEmpty(action.ActionClass) ? this.GetType().Name : action.ActionClass, ActionMethod = action.ActionMethod, LoggedBy = CreatedBy, CreatedByUserType = CreatedByUserType, CurrentObject = JsonConvert.SerializeObject(TEntity), ApprovalConfigurationId = (await ApprovalConfigurationByActionId(action.Id)).Id, }; if (isUpdate) { approval.PreviousObject = JsonConvert.SerializeObject(await ReadSingleAsync(TEntity.Id)); } await _approvalRepository.CreateAsync(approval); }