C#CsvHelper.ValidationException-为什么?

Dam*_*ian 4 c# csvhelper

我正在尝试在C#控制台应用程序中使用CSVHelper。我有一个例外:

CsvHelper.ValidationException:找不到与索引0处的标题匹配的['Numer Dokumentu']名称。

而且我不知道为什么要将此头放在csv文件中的位置。

这是我的Program.cs

var packs = new List<Pack>();
            using (var streamReader = File.OpenText("C:/.../file.csv"))
            {                
                var reader = new CsvReader(streamReader);
                reader.Configuration.RegisterClassMap<PackMap>();
                packs = reader.GetRecords<Pack>().ToList();
            }
Run Code Online (Sandbox Code Playgroud)

和Pack.cs

public class Pack {   
    public string NrDoc { get; set; }
    public string recipientName { get; set; }
    public string recipientAdress { get; set; }
    public string recipientCity { get; set; }
    public string packValue { get; set; }
    public string packInfo { get; set; }
     }
Run Code Online (Sandbox Code Playgroud)

和PackMap.cs

 sealed class PackMap : ClassMap<Pack>
{
    public PackMap()
    {

        AutoMap();
        Map(m => m.NrDoc).Name("Numer Dokumentu");
        Map(m => m.recipientName).Name("Kontrahent");
        Map(m => m.recipientAdress).Name("Ulica");
        Map(m => m.recipientCity).Name("Miasto");
        Map(m => m.packValue).Name("Brutto");
        Map(m => m.packInfo).Name("Opis");
    }
}
Run Code Online (Sandbox Code Playgroud)

在“ PackMap.cs”中,我尝试使用Index(0),Index(1)等,并且没有更改。谁能告诉我我做错了什么?我必须在CSV文件中使用不同的标题名称,并在C#中使用不同的变量

这是我的csv文件:

Numer Dokumentu;Status;Data wyst.;Magazyn;Kontrahent;Ulica;Miasto;Netto;Brutto;Opis
FA/3/08/2017/1;;16.08.2017;MAGAZYN;Damianowa Firma;Nowa Lucyna Herc;Lublin;87;20;107;25;Wystawi? faktur?. Uwagi klienta:   1
FA/1/10/2017/6;;28.10.2017;MAGAZYN;IBIS Marek Je?;Jana Paw?a II;Szubin;241;00;296;43;Wysy?ka
FA/2/10/2017/6;;28.10.2017;MAGAZYN;Netia  S.A.;ul. Poleczki 13;Warszawa;782;28;962;20;Wysy?ka pobranie
Run Code Online (Sandbox Code Playgroud)

Jos*_*ose 7

您的文件不是逗号分隔的,因此您需要更改配置以使用;而不是逗号。

reader.Configuration.Delimiter = ";";
Run Code Online (Sandbox Code Playgroud)