private async Task <bool?> IsTodoAndUserAssociated(int userId, int todoId, SharedEnums.Permissions permission) { var isTodoCreatedByUser = await _todoService.IsTodoCreatedByThisUser(userId, todoId); if (!isTodoCreatedByUser.HasValue) { return(null); } if (isTodoCreatedByUser.Value) { return(true); } return(await _collaborationService.IsTodoAssociatedWithThisCollaborator(userId, todoId, permission)); }