Я пытаюсь, чтобы в CSV-файле не было столбца, заполненного с помощью CSVHelper. Это пример CSV, который мне нужно импортировать
Id
10
123
45
213
Класс, в который я пытаюсь десериализоваться, следующий:
public class Foo {
public int Id { get; set }
public string Name { get; set }
}
При конфигурации по умолчанию я получаю эту ошибку:
CsvHelper.HeaderValidationException: «Заголовок с именем« Имя »не найден.
Я хотел бы иметь возможность определить отображение так, чтобы столбец Name
мог быть заполнен синтаксическим анализатором (например, путем предоставления словаря значений). Любой способ сделать это?
Спасибо
---------- РЕДАКТИРОВАТЬ
Просто чтобы уточнить, идея состоит в том, чтобы иметь что-то вроде конвертера, который , связанный с полем, будет использоваться для декодирования идентификатора в Name
public class NameConverter
{
public NameConverter()
{
employeesList = new Dictionary<int, string>()
{
{ 10, "Mary" },
{ 45, "Mike" },
{ 123, "Jack" },
{ 213, "Suzanne" },
};
}
IDictionary<int, string> employeesList;
public string GetValue(int id) => employeesList[id];
}
Альтернативой, как я могу себе представить, является игнорирование поля Name, как предложено, и внедрение NameConverter в класс Foo и создание Наименование получить только свойство.