Test sur la date en C#.NET

Signaler
Messages postés
52
Date d'inscription
dimanche 2 septembre 2007
Statut
Membre
Dernière intervention
26 juin 2008
-
Messages postés
296
Date d'inscription
mardi 22 avril 2008
Statut
Membre
Dernière intervention
18 août 2008
-
salut,
j'ai une table "RESERVATION" (num_RES, dat_RES, .....). j'utilise SQL Server 2005 comme SGBD et j'utilise C#.NET comme outils de programmation.

1/ est ce que "dat_RES" sera de type varchar(50) ou de type datetime???

2/ quel est le code nécessaire en C#.NET qui me permet de tester sur cette attribut ("dat_RES") ???

merci pour tous

merci pour codes-sources

5 réponses

Messages postés
339
Date d'inscription
dimanche 26 janvier 2003
Statut
Membre
Dernière intervention
25 mars 2009
5
si dat_res est un champ sql DATETIME, alors oui, sous C# tu recupereras un DateTime.

SQL Server sait comparer les dates avec les operateurs > < = comme si c'était de simples entiers.
Messages postés
52
Date d'inscription
dimanche 2 septembre 2007
Statut
Membre
Dernière intervention
26 juin 2008

oui Mr, mais comment faire pour récupérer la date de réservation e comment je peux faire la différence avec une autre date.
 
excusez moi je sui débutante.

merci pour codes-sources
Messages postés
339
Date d'inscription
dimanche 26 janvier 2003
Statut
Membre
Dernière intervention
25 mars 2009
5
T'as un exemple d'utilisation de datetime C# dans une requete SQL ici meme:
http://www.csharpfr.com/tutorial.aspx?id=710

La soustraction se fait avec -, je ne suis pas sur de bien comprendre la question. Tu es bloqué parce que tu n'arrive pas à faire ce que tu veux en C#, ou parceque tu maitrise mal SQL?
Messages postés
52
Date d'inscription
dimanche 2 septembre 2007
Statut
Membre
Dernière intervention
26 juin 2008

salut, je maitrise SQL mais mon problème je ne connait pas C# et je n'arrive pas à faire qu 'est ce que je veux.



j'ai récupéré la date de debut e la date de retour dans deux zones de textes "dat_debut.Text " et "dat_retour.Text"



for
(int i = 0; i < oDataSet.Tables["T_PERIODE_HOTEL"].Rows.Count ; i++)
{


dat_debut.Text = oDataSet.Tables["T_PERIODE_HOTEL"].Rows[i][2].ToString();




dat_retour.Text = oDataSet.Tables["T_PERIODE_HOTEL"].Rows[i][3].ToString();




connexion.Close();










}






1- je veux faire la différence entre les deux dates e j'affiche le résultat dans un text box "resulta.text"
si j'écrit comme ça:   resulta.Text dat_debut.Text - dat_retour.Text;>Erreur 1 L'opérateur '-' ne peut pas être appliqué aux opérandes de type 'string' et 'string' 

2- j'ai un text box "nb_jour.text", ce champ est rempli par l'utilisateur ; je veux ajouter le nombre de jours à la date de debut pour atteindre la date de sortie

c'est à dire : date_sortie= date_debut + nbjour

merci d'avance
merci pour codes-sources
Messages postés
296
Date d'inscription
mardi 22 avril 2008
Statut
Membre
Dernière intervention
18 août 2008

Bonjour,
Pour afficher tes dates dans les textbo, tu as dû les transfomer en string ( avec  l'appel à ToString()  )
Il te faudrait donc faire

resulta.Text =  (oDataSet.Tables["T_PERIODE_HOTEL"].Rows[i][2] -
oDataSet.Tables["T_PERIODE_HOTEL"].Rows[i][3] ).ToString();

ou pour faire ca de manière plus propre :

datetime dateDebut = oDataSet.Tables["T_PERIODE_HOTEL"].Rows[i][2];

datetime dateFin =
oDataSet.Tables["T_PERIODE_HOTEL"].Rows[i][3];

dat_debut.Text =
dateDebut.ToString();

dat_retour.Text = dateFin.ToString();

resulta.Text = (dateDebut - dateFin).ToString();

(a noter que je n'ai pas testé directement, et que je ne suis pas sur non plus que les ToString soient obligatoires )