#c_sharp #wpf #xmlparser #linq2xml
У меня есть схема, при помощи которой я проверяю переданный документ на валидность. Но если я передаю другой файл, текстовый или картинку, то программа загибается еще на этапе открытия. Как вариант, можно открытие обернуть в Try..catch, но хотелось бы узнать, есть ли иной способ?
Ответы
Ответ 1
Оборачивайте открытие в try/catch. Все стандатные способы работы с XML выбрасывают исключения при невалидности (в смысле well-formed) документа. Методов IsWellFormed нет. Единственное, что можно улучшить (если вы это еще не сделали) - использовать для валидации именно XmlReader c ValidationType = ValidationType.Schema - чтобы избежать потенциальных проблем с огромными документами, которые "биты" в самом конце.
Комментариев нет:
Отправить комментарий