Я использую CsvHelper
, чтобы сгенерировать файл csv на основе List
, но я хотел бы избежать написания одного из значений. В соответствии с documentation я использовал CsvClassMap
, чтобы указать поле, которое я хочу игнорировать. Однако значение все еще записывается в файл.CsvHelper игнорировать не работает
Вот мой класс:
public class Person
{
public int Id { get; set; }
public string FirstName { get; set; }
public string MiddleName { get; set; }
public string LastName { get; set; }
}
Вот мой CsvClassMap
:
public sealed class PersonClassMap : CsvClassMap<Person>
{
public PersonClassMap()
{
Map(m => m.Id).Index(0).Name("Id");
Map(m => m.FirstName).Index(1).Name("First Name");
Map(m => m.LastName).Index(2).Name("Last Name");
Map(m => m.MiddleName).Ignore();
}
}
И это код, который я использую для создания выходного сигнала:
var persons = new List<Person>
{
new Person {Id = 1, FirstName = "Randall", MiddleName = "Michael", LastName = "Perry"},
new Person {Id = 2, FirstName = "Marigold", MiddleName = "Joanne", LastName = "Mercibar"},
new Person {Id = 3, FirstName = "Sven", MiddleName = "Ergenfein", LastName = "Olafsson"}
};
using (var csvWriter = new CsvWriter(textWriter))
{
csvWriter.WriteRecords(persons);
textWriter.Flush();
}
Мои выход выглядит следующим образом:
Id,FirstName,MiddleName,LastName 1,Randall,Michael,Perry 2,Marigold,Joanne,Mercibar 3,Sven,Ergenfein,Olafsson
Как я могу заставить его прекратить писать MiddleName
?
Не знаю, почему это было вниз проголосовали. Я узнал что-то полезное здесь. Что-то не так с ответом? – jsuddsjr
Я думаю, это потому, что он ответил на свой вопрос сразу после публикации его? – Benedict
«Не просто ответить на ваш вопрос и ответить на него, его явно поощряют»: http://blog.stackoverflow.com/2011/07/its-ok-to-ask-and-answer-your-own -вопросов/ –