Проверка листов excel
Приветствую всех,
У меня есть странная проблема, и google до сих пор не был так уж полезен.
У меня есть проект, над которым я работаю для своей работы. По сути, я переписываю старый школьный код VB6 на более современный C# (стандартный и т. д.). Я не могу дать слишком много подробностей, но суть моего вопроса такова. Исходный код проглатывает кучу различных файлов excel, импортирует данные и делает с ними что-то.
К сожалению, эти данные заведомо ненадежны. Поля будут отсутствовать или написаны с ошибками. Данные будут недействительными или отсутствующими в отдельных ячейках. Будут включены два или три поля с очень похожими именами (и, естественно, только одно из них является допустимым). Формат также менялся с течением времени, когда добавлялись новые поля или удалялись старые. Обычно никто не дает нам знать заранее.
Это чертовски раздражает, но, к сожалению, сущность, дающая нам входные данные, не собирается в ближайшее время давать нам приличные последовательные данные. Это вызывает много проблем глубоко в коде, когда появляется что-то, что не было запланировано.
Я могу легко читать данные, используя такие технологии, как EPPLUS и Dapper. Но что я хотел бы сделать, так это иметь возможность просмотреть электронную таблицу, прежде чем она попадет в систему, и проверить содержимое электронной таблицы на соответствие тому, что мы ожидаем. Таким образом, если электронная таблица содержит плохие данные, мы можем отказаться от нее и предпочтительно предложить пользователю сообщить, что ему нужно исправить.
По-видимому, для этого потребуется какая-то схема, описывающая, как должны выглядеть данные. Но формы этих документов excel разнообразны. Мне интересно, есть ли какие-нибудь доступные библиотеки, которые уже делают это, поскольку я бы предпочел не создавать свою собственную систему с нуля.
Кто-нибудь делал что-нибудь подобное?
спасибо,
Эйрдрейк
Что я уже пробовал:
EPPLUS и щеголеватый наряду с различными расширениями.