Bonjour,

J'essaie d'utiliser cette librairie :
http://www.codeproject.com/useritems/filehelpers.asp

Dans mon programme, j'ai créé deux classes :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
 
        [DelimitedRecord(";")]
        public class Waldata
        {
            public string Ticker;
            [FieldConverter(ConverterKind.Date, "dd/MM/yy")]
            public DateTime Date;
            public double Open;
            public double High;
            public double Low;
            public double Close;
            public double Volume;
        }
 
        [DelimitedRecord(";")]
        [IgnoreFirst(1)]
        public class EBP
        {
            public string Ticker;
            [FieldConverter(ConverterKind.Date, "yyyyMMdd")]
            public DateTime Date;
            public double Open;
            public double High;
            public double Low;
            public double Close;
            public double Volume;
        }

Un peu plus loin dans mon programme, j'utilise ces classes de cette façon :


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 
            if (bRightFormat == false)
            {
                bRightFormat = true;
                FileHelperEngine<Waldata> engineW = new FileHelperEngine<Waldata>();
                try
                {
                    Waldata[] res = engineW.ReadFile(filename);
                    strFormat = "Waldata";
                }
                catch (Exception ex)
                {
                    bRightFormat = false;
                }
            }
 
            if (bRightFormat == false)
            {
                bRightFormat = true;
                FileHelperEngine<EBP> engineE = new FileHelperEngine<EBP>();
                try
                {
                    EBP[] res = engineE.ReadFile(filename);
                    strFormat = "EBP";
                }
                catch (Exception ex)
                {
                    bRightFormat = false;
                }
            }
ça marche, mais je souhaiterai écrire quelquechose de plus générique, car dans le vrai programme il y a beaucoup plus que deux classes.

En pseudo code ce serait quelquechose comme cela :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
            if (bRightFormat == false)
            {
                TestFormat(Waldata);
            }
 
            if (bRightFormat == false)
            {
                TestFormat(EBP);
            }
Des pistes pour écrire une fonction paramètrés en remplacement de code?
D'abord est-ce possible ?

Merci

Tintin92