Bonjour,

Je suis totalement bloqué dans mon dev :

Je développe une application Silverlight 3 qui doit utiliser une assembly déjà existante. J'ai donc développé un WCF que j'ajoute à mon application Silverlight et qui va taper dans l'assembly.

Dans mon application Silverlight
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
void GetData(object sender, MonService.GetDataCompletedEventArgs e)
        {
            string data = e.Result;
        }

Là il me fait une exception dans le fichier Reference.cs :
Le serveur distant a retourné une erreur : NotFound.
Et ensuite dans le code :
L'exception TargetInvocationException n'a pas été gérée

Voila, maintenant dites moi si je me trompe :
Cet exception ça veut dire que la méthode appelée dans l'assembly lève une exception.
J'ai donc tester cette méthode indépendamment du WCF : Elle fonctionne.
Ensuite j'ai blindé cette méthode de try catch(Exception e){throw new Exception("Ligne X :
" + e.Message)} sur toutes les lignes de codes qui me paraissaient suspectes.
et j'ai mis dans mon WCF :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
public string GetData()
        {
            string data = string.Empty;
            try
            {
                data = MaMethodeDansLassembly();
            }
            catch (Exception e)
            {
                data = e.Message;
            }
            return data ;
        }

Donc comme ça elle va me renvoyer l'exception.
Et donc ça m'a renvoyé ça :
Ligne 105 : Une exception a été levée par l'initialiseur de type pour 'Data.EventLogHelper'.
Et la ligne de code en question c'est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
string variableStatic = EventLogHelper.LogEntryTimeFormatString;

Et ça correspond à une variable statique dans une classe statique :
Code C# :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
    public static class EventLogHelper
    {
        public static string LogEntryTimeFormatString= "dd/mm/yyyy";
    }
...
Je ne comprends absolument pas pourquoi ça plante à ce niveau. Cette méthode marche parfaitement bien sans passer par le WCF.

Est-ce que quelqu'un a une idée ? Est-ce que j'ai la bonne démarche ? J'espère vraiment pouvoir trouver la solution sinon il faudra que je développe une couche d'accès au données...

Merci