C# CsvHelper写入一个空的第一行标头

C# CsvHelper写入一个空的第一行标头,c#,csv,csvhelper,C#,Csv,Csvhelper,这是CsvHelper库记录的标准代码,用于在生成CSV文件时打印标题行 var dbAccounts = _dbcontext.Accounts.ToList(); using (TextWriter textWriter = new StreamWriter(path, false, Encoding.GetEncoding(28591))) { using (var csvWriter = new CsvWri

这是CsvHelper库记录的标准代码,用于在生成CSV文件时打印标题行

var dbAccounts = _dbcontext.Accounts.ToList();
            using (TextWriter textWriter = new StreamWriter(path, false, Encoding.GetEncoding(28591)))
            {
                using (var csvWriter = new CsvWriter(textWriter, _csvConfiguration))
                {
                    csvWriter.Configuration.RegisterClassMap<CsvMappedAccount>();

                    csvWriter.WriteHeader<CsvMappedAccount>(); 

                    foreach (var dbAccount in dbAccounts)
                    {
                        csvWriter.WriteRecord(dbAccount); 
                    } 

                    textWriter.Flush();
                }
            }
var dbAccounts=_dbcontext.Accounts.ToList();
使用(TextWriter TextWriter=newstreamWriter(路径,false,Encoding.GetEncoding(28591)))
{
使用(var csvWriter=new csvWriter(textWriter,_csvConfiguration))
{
csvWriter.Configuration.RegisterClassMap();
csvWriter.WriteHeader();
foreach(dbAccounts中的var dbAccount)
{
csvWriter.WriterRecord(dbAccount);
} 
textWriter.Flush();
}
}
这是注册班

 public sealed class CsvMappedAccount: CsvClassMap<Account>
    {
        public CsvMappedAccount()
        {
            Map(m => m.ID).Name("ID");
            Map(m => m.Name).Name("AccountName");
            Map(m => m.AccountNo).Name("AccountNo");
        }
    }

public sealed class CsvMappedAccount:CsvClassMap

您正在传递配置类类型,而它应该是“record”类类型,例如
WriteHeader()
啊,您实际上是对的,这就是问题所在,如果您将此作为答案发布,我将很高兴接受。别担心,很高兴它有帮助,让我们继续:)您正在传递配置类类型,而它应该是“记录”类类型,例如
WriteHeader()
Ah您实际上是对的,这就是问题所在,如果您将此作为答案发布,我将很高兴接受。别担心,很高兴它有帮助,让我们继续:)
csvWriter.WriteHeader<CsvMappedAccount>();