public virtual async Task<IActionResult> ValueDelete(int id)
        {
            if (!await _permissionService.AuthorizeAsync(StandardPermissionProvider.ManageSettings))
                return AccessDeniedView();

            //try to get a customer attribute value with the specified id
            var customerAttributeValue = await _customerAttributeService.GetCustomerAttributeValueByIdAsync(id)
                ?? throw new ArgumentException("No customer attribute value found with the specified id", nameof(id));

            await _customerAttributeService.DeleteCustomerAttributeValueAsync(customerAttributeValue);

            //activity log
            await _customerActivityService.InsertActivityAsync("DeleteCustomerAttributeValue",
                string.Format(await _localizationService.GetResourceAsync("ActivityLog.DeleteCustomerAttributeValue"), customerAttributeValue.Id),
                customerAttributeValue);

            return new NullJsonResult();
        }