Я пишу простую утилиту для сбора журналов приложений и их отображения пользователю. Необходимо взять записи журнала из нескольких файлов и объединить их в одно внутреннее хранилище. Объединение основано на времени записи в журнале, поэтому несколько записей могут иметь одинаковое время. Обратите внимание, что размер журналов довольно мал, поэтому максимальный размер может составлять 10 файлов, каждый из которых содержит 2000 записей журнала.
Я также хочу представить это пользователю, но разрешить ему фильтровать на основе различных уровней ведения журнала (отладка, предупреждение, ошибка и т. Д.), А также фильтровать на основе файла, из которого он получен. Это звучит как очень распространенный тип проблемы для решения, и поэтому другие должны иметь опыт о наилучшем подходе. Я думал о следующем ...
1, используйте DataSet для хранения записей журнала, а затем используйте DataView для применения фильтрации, сортировки.
2, используйте пару экземпляров List <>, мастер, а затем копию, которая отфильтрована до требуемых записей, и примените пользовательскую функцию IComparer к отфильтрованному списку, чтобы получить правильное упорядочение.
Мысли