[RESOLU très vite]Question simple sur les méthodes

Question simple sur les méthodes [RESOLU très vite] - C#/.NET managed - Programmation

Marsh Posté le 22-06-2006 à 19:14:52    

Bonjour à tous.
Je travaille en ce moemnt en C# sur une base de données.
j'ai besoin d'une méthode qui me récupère différents champ d'une ligne d'un DataReader.
 
Au début j'avais fait 3 méthodes différentes qui me récupère chacune le champs voulu.
Malheureusement une fois la première méthode appelé, le Reader est Read() et l'on ne peut récupérer les autres champs à moins de recréer le SqlDataReader.
J'ai donc alors voulu centraliser la récupération de tout mes chamsp dnas une méthode unique du genre
 

Code :
  1. GetTasTcalTvaTc(reader, iIdTas, iIdTcal, iIdTc, fTva);
  2. avec
  3. public void GetTasTcalTvaTc(SqlDataReader reader, int iIdTas, int iIdTcal, int iIdTc, float fTva)
  4.         {
  5.             reader.Read();
  6.             iIdTas = Convert.ToInt32(reader.GetDouble(1));
  7.             iIdTcal = Convert.ToInt32(reader.GetDouble(4));
  8.             iIdTc = Convert.ToInt32(reader.GetDouble(8));
  9.             if (Convert.ToInt32(reader.GetDouble(6)) != 0)
  10.                 fTva = (float)reader.GetDouble(7);
  11.             else fTva = 0;
  12.         }


 
Malheureusement encore une fois le c# a abolit les pointeurs etc... et je ne vois aps alors comment récupérer les modifications sur tout mes paramètres...
Ca semble bête, mais à part passer par un retour avec un tableau de mes paramètres je en vois pas comment faire...
 
Merci pour votre aide.


Message édité par Jinroh le 22-06-2006 à 19:26:06

---------------
Galerie photos
Reply

Marsh Posté le 22-06-2006 à 19:14:52   

Reply

Marsh Posté le 22-06-2006 à 19:23:25    

Passe tes int/float par référence.
 

Code :
  1. public void GetTasTcalTvaTc(SqlDataReader reader, ref int iIdTas, ref int iIdTcal, ref int iIdTc, ref float fTva)

Reply

Marsh Posté le 22-06-2006 à 19:25:43    

Merci beaucoup pour l'aide rapide.
c'est exactement ce qu'il me faut, même avec un out ;)
 
Merci


---------------
Galerie photos
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed