Considérez que j’ai un fichier dt
datatable et qu’il a une colonne DateofOrder
,
DateofOrder 07/01/2010 07/05/2010 07/06/2010
Je souhaite formater ces dates dans la colonne DateOfOrder
à cette
DateofOrder 01/Jul/2010 05/Jul/2010 06/Jul/2010
Toute suggestion..
La meilleure chose à faire serait de vous assurer que votre DataTable est typé et que cette colonne est de type DateTime. Ensuite, lorsque vous allez réellement imprimer les valeurs à l’écran, vous pouvez définir le format à cet endroit sans modifier les données sous-jacentes.
Si ce n’est pas faisable, voici une méthode d’extension que j’utilise souvent:
public static void Convert(this DataColumn column, Func
Vous pourriez utiliser dans votre situation comme:
myTable.Columns["DateOfOrder"].Convert( val => DateTime.Parse(val.ToSsortingng()).ToSsortingng("dd/MMM/yyyy"));
Cela ne fonctionne que sur des DataTables non typés (par exemple, le type de colonne doit être un object ou éventuellement une chaîne).
.ToSsortingng (“jj / MMM / aaaa”) (en supposant que vos données sont de type DateTime)
Expliquant simplement la réponse de Saille ici:
Pour un DateTime, le format n’est pas un problème. Un DateTime est en fait le nombre de ticks à compter de minuit, le 1er janvier de l’an 1 ap. J.-C. Donc, vraiment, c’est juste un long. Le formatage ne devient un problème que lorsque vient le temps de le convertir en chaîne. Donc, vous devrez vous occuper de la mise en forme, soit lorsque vous la retirez du tableau de données et que vous êtes prêt à la sortir, ou que vous l’insérez dans la table de données sous forme de chaîne (ce que je ne recommanderais pas, par souci de souplesse. fins). Le formatage peut être effectué avec l’appel .ToSsortingng du DateTime suggéré par saille, .ToSsortingng("dd/MMM/yyyy")