public T Deserialize <T>(CsvHelper.CsvReader reader, CsvHeaderNamingContext naming, string referenceName)
 {
     return((T)Deserialize(reader, typeof(T), naming.GetNextLevel(referenceName, HeaderNestingDelimiter)));
 }
 public T Deserialize <T>(CsvHelper.CsvReader reader, CsvHeaderNamingContext naming)
 {
     return((T)Deserialize(reader, typeof(T), naming));
 }
 public void WriteHeader <T>(CsvHelper.CsvWriter writer, CsvHeaderNamingContext naming)
 {
     WriteHeader(writer, typeof(T), naming);
 }
 public void WriteHeader <T>(CsvHelper.CsvWriter writer, CsvHeaderNamingContext naming, string referenceName)
 {
     WriteHeader <T>(writer, naming.GetNextLevel(referenceName, HeaderNestingDelimiter));
 }
        public void WriteHeader(CsvHelper.CsvWriter writer, Type dataType, CsvHeaderNamingContext naming)
        {
            var converter = Converters.FirstOrDefault(c => c.CanConvert(dataType) && c.CanWrite);

            converter.WriteCsvHeader(writer, dataType, this, naming);
        }