Имеется возможность добавлять объекты с пользовательским именем (textBox + AddButton) в список. Далее, на основе имен этих объектов будут генерироваться узлы xml-документа. Очевидно, что у названий узлов xml есть ограничения (например, запрет на кириллицу, запрет на имя, которое начинается с цифры и т.д.). Имеется ли способ валидации имени на этапе его ввода в TextBox, т.е. непосредственно до генерирования документа? Или в методе проверки создавать xml-документ и проверять, не выкинет ли он исключение? По-моему, это костыль какой-то =) Спасибо за внимание
try
{
XmlConvert.VerifyName(name);
return true;
}
catch
{
return false;
}
Решение найдено тут Правда этот метод пропускает кириллицу.. Поскольку xml может содержать кириллицу, в зависимости от кодировки
Запрет на ввод кириллицы:
if (new Regex(@"\p{IsCyrillic}+").Matches(nameNewObject).Count > 0)
{
return false;
}
Как правильно заметили в комментариях, логичнее разрешить ввод необходимых символов, нежели запрещать кириллицу.
if (Regex.IsMatch(nameNewObject, @"^[a-zA-Z0-9]+$"))
{
return true;
}
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости