假设我有一个包含以下csv文件:CSV栏并将其映射
Column1,Column2,Column3
Supermario,1989,Nintendo
但是我想staticly定义有效的列标题如:
Game_Name,Year,Console_Name
我想允许用户将csv中的标题映射到静态有效标题,如下所示:
Column1 ---- Game_Name
Column2 ---- Year
Column3 ----- Console_Name
我遇到问题了f确定如何完成这项任务。
我以前用csvhelper
来读csv文件,但在这里我想允许用户定义自己的列标题,并且当我的表单应用程序运行时,我想将它们映射到有效的列标题。
在片段中的以下部分,杰夫提到:
public MyDataClassMap()
{
Map(x => x.GameName).Name("Column1");
Map(x => x.Year).Name("Column2");
Map(x => x.ConsoleName).Name("Column3");
}
这看起来像“列1”和他们其余的人都被映射手动不会动态...我不知道是什么列将被命名,那么这将如何工作?如果这些列总是被命名为Column1,Column2等等,这可以工作,但有时它的Column1有时候它的Col1有时它的C1它是任意的。
什么是可能的解决方案呢?
感谢,
为什么不第一行中使用列标题,而不是使用列1,列2,栏3? – Mark
我不创建文件别人正在创建csv文件,我没有它的控制我想最终用户能够映射它自己 – RobertC