J'ai une colonne dans mon datatable qui est de type DateTime. Je veux seulement le DatePart, par conséquent quand j'utilise le ToShortDateTimeString il convertit en date courte mais de type de chaîne. Par conséquent, lorsque je réaffecte la chaîne à la colonne du datatable, elle ajoute de nouveau 12:00:00 à celle-ci. Je ne peux pas changer le type de colonne dans mon datatable. Est-il possible de convertir DateTime en ShortDateTime directement sans convertir en chaîne ?????Comment faire pour convertir DateTime en shortdatetime en C#?
Répondre
Vous pouvez utiliser le .Date
property, comme ceci:
DateTime.Now.Date //just the date portion, like DateTime.Today would give
Si vous voulez formater sur l'écran, par exemple dans un GridView, vous pouvez ajouter le format à votre colonne en utilisant the DataFormatString
property, comme ceci:
<asp:BoundField DataField="ColumnName" DataFormatString="{0:yyyy-MM-dd}" HtmlEncode="false" />
désolé bro il ne fonctionne pas –
Il intègre également la partie de temps - apparemment la question veut que le composant temps a disparu? –
@Abhishek - Je suis confus par votre question alors, la partie temps est une partie fondamentale du type 'DateTime' ... vous ne pouvez pas stocker ce type sans un temps, tout ce que vous pouvez faire est de l'ignorer lors de l'affichage. –
Non, cela est impossible. Le formater en une chaîne n'aide pas non plus.
Le type datetime
dans la base de données contient toujours un composant date et heure. Si vous ne spécifiez pas le composant heure, il devient 00:00:00
(ou 12:00:00 AM
au format 12 heures). Donc, quoi que vous fassiez pour essayer de supprimer le compontent du temps, il en aura toujours un.
Notez que la valeur datetime
de la base de données n'a pas de format. C'est juste une valeur représentant un point dans le temps. Par conséquent, vous devez prendre soin des données chaque fois que vous lisez à partir de la base de données. Si vous utilisez simplement les paramètres par défaut pour mettre en forme la valeur de la date dans une chaîne, vous obtiendrez les composants date et heure, car ils sont toujours présents. Vous devez spécifier le format que vous souhaitez lors de la conversion de la valeur DateTime en une chaîne pour l'affichage. Par exemple:
string formatted = theDateTimeValue.ToString("yyyy-MM-dd");
Je lie la datatable à un gridview. Donc, cela signifie que la seule option est de manipuler les données dans l'événement rowdatabound ?? –
@Abhishek: Vous devriez pouvoir spécifier un format lors de la liaison du champ à une colonne de grille, quelque chose comme ce que Nick a ajouté à sa réponse. L'utilisation d'un événement RowDataBound fonctionnerait également, ce qui vous donne également la possibilité de faire ce que vous voulez avec la valeur avant de la formater. – Guffa
Si vous traitez avec DataGrids ou GridViews, en format de colonne de date à l'aide de {0: d}, simple ou D. Si vous êtes sur le web et en utilisant ITemplate avec table, tr et td et en utilisant la liaison modèle comme <% # Eval()%> vous essayez ce qui suit
<span><%#string.Format("{0:d}",Eval("DataTableFieldName"))%></span>
- 1. Convertir DateTime pour MySQL en utilisant C#
- 2. convertir datetime js en C#
- 3. Comment convertir en datetime
- 4. Comment faire pour convertir en DateTime sur HTML.Textbox?
- 5. Comment faire pour convertir datetime en chaîne dans linqtosql?
- 6. Comment convertir un DateTime en Date en C#
- 7. Comment convertir datetime en timestamp unix en c?
- 8. Comment convertir Varchar en Datetime?
- 9. Comment convertir un octet [] en datetime en C#?
- 10. Comment convertir DateTime en Date
- 11. Comment faire pour convertir WMI DateTime à DateTime standard?
- 12. Comment faire pour convertir Excel.Range.Interior.Color en System.Drawing.Color en C#?
- 13. Convertir .NET datetime en SQlite datetime
- 14. Comment faire pour convertir une structure C++ en structure C#
- 15. convertir en datetime mysql
- 16. SQL Convertir en GMT DateTime
- 17. DateTime convertir en Date, puis de nouveau en DateTime en C#
- 18. Comment faire pour convertir NSArray en NSString
- 19. MySQL: comment convertir un datetime en unix?
- 20. Convertir Datetime.ToFileTime() en objet DateTime
- 21. Comment faire pour convertir en utilisant SQLite à la commande SQL simple en C#
- 22. Convertir la chaîne en DateTime?
- 23. comment convertir une chaîne datetime en objet datetime?
- 24. Comment convertir ces valeurs varchar en datetime
- 25. Convertir la chaîne en datetime en C# .net
- 26. Convertir l'horodatage en datetime en erlang
- 27. Comment faire pour convertir le code ActionScript en code c?
- 28. Comment faire pour convertir BMP en AVI C#
- 29. Comment faire pour convertir la chaîne à int en C
- 30. Comment faire pour convertir IntPtr en objet C++ natif
est-ce que vous corriger vous cherchez un type de données qui contient juste la date du calendrier et non le temps d'horloge? C'est comme ça que je lis la première révision. –
... cuz 'rep est rare avec l'afflux de nouveaux utilisateurs sur ce site et nous attendons comme une meute de loups affamés pour attaquer le problème ... Je vais déjeuner maintenant. Si vous pouviez attendre jusqu'au 8 mai 2010 à 15 h 15, heure normale de l'Est pour clarifier que ce serait bien et synchroniser avec mon emploi du temps, sinon sans la partie horaire de la date, je ne saurai pas quand retourner et fournir le droit répondre :) –
ouais votre rite. Je veux seulement la date et non la partie temps. Je lie la datatable à un gridview. Cela signifie donc que la seule option est de manipuler les données dans l'événement rowdatabound. Je pense que l'explication de Guffa est correcte. Faites-moi savoir s'il y a une autre solution? –