J'utilise Visual Studio 2017 (15.6.6). Lors du débogage, j'essaie d'évaluer des expressions simples telles que int a = 2;
dans la fenêtre immédiate. Une erreur
Erreur interne dans le compilateur C #
est lancé.
J'ai essayé d'activer Use Managed Compatibility Mode
comme indiqué dans cette question mais cela n'a pas aidé.
Merci pour toute aide.
En cherchant plus loin, j'ai trouvé ce problème sur GitHub où une réponse recommande de vérifier également Use the legacy C# and VB expression evaluators
. Visual Studio m'avertit de cocher cette option, mais en l'activant, je peux à nouveau évaluer les expressions dans la fenêtre immédiate.
Il est même possible de désactiver le Use Managed Compatibility Mode
à nouveau.
Update: Notez cependant que l'utilisation des évaluateurs d'expressions hérités m'empêche d'inspecter les variables locales au moment du débogage, je ne l'appellerais donc pas une solution.
Dans mon cas, le problème se posait dans une assemblée particulière. Lorsque nous avons examiné les informations d'assemblage (à partir de l'Explorateur de solutions, cliquez avec le bouton droit de la souris sur le projet, sélectionnez Propriétés, puis cliquez sur Assembler les informations). Tout était vide.
Nous avons donc donné un Guid, puis reconstruit et cela a fonctionné.
J'ai eu le même problème. Je ne sais pas si c'est votre option, mais pour moi, c'était le problème suivant: au lieu de la version "Debug", la "Release" était activée. Donc, dès que je suis revenu au débogage, je me suis débarrassé de cette erreur.