CSV импорт с пользовательской коррекцией - PullRequest
0 голосов
/ 16 июля 2011

Я ищу общие рекомендации по импорту файла CSV. Пользовательский интерфейс выполнен в ASP.NET MVC3. Когда пользователь загружает файл, мне нужно проверить его и разрешить вручную исправлять любые ошибки в браузере, прежде чем я сохраню его в базе данных. Есть так много потенциальных ошибок, чтобы проверить, и я действительно не уверен, что лучший способ добиться этого. Другое дело, что у меня есть всего несколько дней, чтобы реализовать это, чтобы это не было слишком сложно. Я в порядке с регулярными выражениями и программированием, и у меня уже есть доступный поток файлов, но я просто не могу придумать хороший и практичный способ представить эту функцию пользователю. Надеюсь, что кто-то может вдохновить меня. Большое спасибо.

1 Ответ

0 голосов
/ 16 июля 2011

Есть несколько предложений здесь:

Чтение файла CSV в .NET?

Из них мы решили использовать Linq2CSV в наших проектах MVC.

http://www.codeproject.com/KB/linq/LINQtoCSV.aspx

Он довольно прост в использовании, и проверка хороша. Вы определяете простой класс, который определяет структуру (столбцы) файла CSV. Он выполнит базовую проверку, и если она прошла, мы отправили его через Validator, который использовал атрибуты DataAnnotation для проверки на соответствие более сложным правилам. Мы нашли его надежным, и мы смогли добавить некоторые функции, которые мы хотели.

Если бы файл был патологически плохим, мы бы потерпели неудачу и представили бы одно сообщение об ошибке Если файл был достаточно надежным, мы отображали строки с ошибками вместе с сообщениями об ошибках для этой строки, чтобы они могли увидеть проблему в контексте. В нашем случае это была только сетка отображения - мы не разрешали редактирование через веб-сайт - потому что CSV генерировались из их системы данных, и нам нужны были они для редактирования исходных данных в их системе и регенерации CSV. Чтобы выполнить редактирование на месте, вам нужно разместить все значения столбцов как строки, чтобы они могли фиксировать числа, которые не анализируются и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...