Comment convertir une chaîne de 12 heures en C # TimeSpan?
Lorsqu'un utilisateur remplit un formulaire, ils utilisent une liste déroulante pour indiquer quel moment ils aimeraient organiser le test pour. Cette liste déroulante contient tous les moments de la journée par incréments de 15 minutes dans les 12 heures AM/PM forme. Ainsi, par exemple, si l'utilisateur sélectionne 4:15 pm, le serveur envoie la chaîne "4:15 PM"
sur le serveur avec la forme submittion.
J'ai besoin de quelques comment convertir cette chaîne en un laps de Temps, donc je peux le stocker dans ma base de données est temps de terrain (avec linq to sql).
Quelqu'un connais un bon moyen de convertir une heure AM/PM chaîne dans une plage de temps?
source d'informationauteur KallDrexx
Vous devez vous connecter pour publier un commentaire.
Vous voudrez probablement utiliser une
DateTime
au lieu deTimeSpan
. Vous pouvez utiliserDateTime.ParseExact
pour analyser la chaîne dans un objet DateTime.Façon la plus simple, c'est comme cela:
.
Cela prend Phil code et le met dans une méthode d'aide. C'est trivial, mais il fait un appel sur la ligne:
Essayez ceci:
J'aime Lee répondre du mieux, mais acermate serait correct si vous souhaitez utiliser tryparse. Pour les combiner et obtenir de temps à faire:
Essayer:
Que vous avez le temps, si vous créez des temps de la fin, ainsi vous pouvez obtenir Timespans par faire de l'arithmétique w/DateTime objets.