如何使用 CSVHelper 序列化正确的 class

How to serialize the right class when there are several with CSVHelper

我想知道是否可以序列化正确的 class 当 CSVHelper 有几个不同的时候,例如:

有两个class,A和B,当我从CSV文件加载数据时(它已经从Class A或B导出),数据将被加载到右边 class 或 A 或 B...

解决方案:

public void ImportFromCSV_V2(ref Buses_Data buses_Data0, string filepath)
        {
            // Ouverture du document 
            using (TextReader fileReader = File.OpenText(filepath))
            {
                var csv = new CsvReader(fileReader);
                csv.Configuration.Delimiter = ";";
                var records = csv.GetRecords<ServiceBusCSV>();
                foreach (var record in records)
                {
                    buses_Data0.ServiceBusCSV_List.Add(record);
                }
            }
        }

我想我会使用工厂模式。
加载 CSV 文件,获取 header(或以其他方式了解您正在加载的 CSV 类型以及您必须创建的 object),然后使用 CSVHelper 构建适当的 object图书馆或类似场所。
通过一些努力,您可以使工厂抽象并在运行时注入加载特定 CSV 文件所需的具体工厂。