Supposons que j'ai un fichier csv contenant les éléments suivants:colonnes csv et les cartographier
Column1,Column2,Column3
Supermario,1989,Nintendo
Cependant, je veux staticly définir les en-têtes de colonne valides tels que:
Game_Name,Year,Console_Name
Je voudrais permettre l'utilisateur de la carte les en-têtes dans le csv aux en-têtes valides statiques comme ceci:
Column1 ---- Game_Name
Column2 ---- Year
Column3 ----- Console_Name
Je ne parviens pas à f imaginer comment je pourrais accomplir cette tâche. J'ai utilisé csvhelper
avant de lire les fichiers CSV mais ici, je veux permettre à l'utilisateur de définir ses propres en-têtes de colonnes, et quand mon application de formulaire s'exécute je veux les mapper aux en-têtes de colonne valides.
Dans la section suivante dans l'extrait que Jeff a mentionné:
public MyDataClassMap()
{
Map(x => x.GameName).Name("Column1");
Map(x => x.Year).Name("Column2");
Map(x => x.ConsoleName).Name("Column3");
}
Ici, il ressemble à « Colonne1 » et le reste d'entre eux sont mappées manuellement pas dynamiquement ... Je ne sais pas ce que le colonnes va être nommé alors comment cela fonctionnerait-il? Si les colonnes étaient toujours nommées Colonne1, Colonne2, etc., cela fonctionnerait mais parfois sa Colonne1 parfois sa Col1 parfois sa C1 c'est arbitraire.
Quelle est une solution possible à cela?
Merci,
pourquoi ne pas utiliser en-tête de colonne dans la première ligne plutôt que d'utiliser Column1, Colonne2, Colonne3? – Mark
Je ne crée pas le fichier que quelqu'un d'autre crée le fichier csv et je n'en ai pas le contrôle Je voudrais que l'utilisateur final puisse le mapper lui-même – RobertC