Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Matthieu MEZIL

I love .Net

Abonnements

Actualités

Locations of visitors to this page English blog

reflector bug IL -> C#/VB/etc.

Je regardais le code de l'Entity Framework quand je suis tombé sur le code suivant :

switch (this.<>1__state)
{
    case 3:
    case 4:
        break;

    default:
        return;
        try
        {
        }
        finally
        {
            this.<>m__Finally6();
        }
        break;
}

Cela me paraissant bizarre, j'ai regardé le code VB : pareil. Je me suis donc penché sur l'IL et c'est là que j'ai compris que Reflector m'avais trahi pour la deuxième fois de la journée.

En effet, l'IL est le suivant :

L_0023: ldfld int32 System.Data.EntityModel.SchemaObjectModel.EntityContainerAssociationSet/<get_Ends>d__0::<>1__state
L_0028: stloc.1
L_0029: ldloc.1
L_002a: ldc.i4.3
L_002b: sub
L_002c: switch (L_003a, L_003a)
L_0039: ret
L_003a: leave.s L_0043
L_003c: ldarg.0
L_003d: call instance void System.Data.EntityModel.SchemaObjectModel.EntityContainerAssociationSet/<get_Ends>d__0::<>m__Finally6()
L_0042: endfinally
L_0043: ret
.try L_003a to L_003c finally handler L_003c to L_0043

Donc le code C# devrait être le suivant :

switch (this.<>1__state)
{
    case 3:
    case 4:
        try
        {
        }
        finally
        {
            this.<>m__Finally6();
        }
        break;
    default:
        return;
}

 

Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :

Publié mercredi 4 juin 2008 08:39 par Matthieu MEZIL

Classé sous : , , , ,

Commentaires

# re: reflector bug IL -> C#/VB/etc. @ jeudi 5 juin 2008 00:15

Reflector fait souvent des erreurs, et on est donc obligé de souvent retravailler le code derrière pour qu'il soit correctement utilisable.

warning

# re: reflector bug IL -> C#/VB/etc. @ jeudi 5 juin 2008 16:49

Ouais je sais mais quand on veut reprendre une dll du framework dont le pdb n'est pas fournit afin de faire du pas à pas, c'est un peu relou !!!

Matthieu MEZIL

Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- Solution Template et Project Template dans Visual Studio par Atteint de JavaScriptite Aiguë [Cyril Durand] le il y a 2 heures et 16 minutes

- PocketIE et Assignation du SRC d'un Element IMG par Jerome Laban le il y a 3 heures et 8 minutes

- Conversion de fichiers RAW en fichier JPEG avec WPF par Perspective le il y a 3 heures et 44 minutes

- Mise à Jour du Moteur de Recherche des Arrêts de Bus de Montréal par Jerome Laban le il y a 4 heures et 28 minutes

- [WPF] XPSReader v0.2 par Blog Technique d'Audrey PETIT le il y a 5 heures et 29 minutes

- Entity Framework : providers Oracle, MySQL et PostgreSQL par Matthieu MEZIL le il y a 12 heures et 4 minutes

- [WPF] Nouvel article sur c2i.fr par Richard Clark le 09-06-2008, 17:33

- F# nouvelle CTP 1.9.6.2 (update) par Pierrick's Blog le 09-06-2008, 13:27

- La suite ...Proposition de collaboration rédactionnelle entre les communautés de développeurs et Microsoft France par LucasR le 09-05-2008, 17:45

- [Fun] Votre simulateur de vol avec Microsoft ESP par Julien Chable le 09-05-2008, 12:02