Si quelqu'un peut fournir une aide pour celui-ci, je serais très reconnaissant!System.ExecutionEngineException PropertyChanged
Nous utilisons: Silverlight 3/MVVM/Blacklight DragDock Contrôle/ComponentOne Silverlight Contrôle
J'ai une application Silverlight qui repose en grande partie sur le modèle MVVM. L'application fonctionne apparemment bien, jusqu'à récemment. J'ai commencé à remarquer semi-random (semi-random = sur une période de temps assez longue ~ 2 - 5 minutes) Je peux reproduire une exception System.ExecutionEngineException provenant de l'événement PropertyChanged en cours de levée. Le nom de propriété pour lequel la notification est déclenchée n'est pas toujours le même nom de propriété (le déclenchement de l'événement de modification de propriété a lieu dans une classe ViewModel de base).
Le code ressemble fondamentalement ceci:
if (PropertyChanged! = Null) Application.Current.RootVisual.Dispatcher.BeginInvoke (() => PropertyChanged (cela, de nouveaux PropertyChangedEventArgs (propertyName)));
Le code fonctionne pour tout le reste dans l'application. Fondamentalement tout ce qui jette un événement changé de propriété passe par là. Je ne sais pas pourquoi cela échoue tout à coup. S'il vous plaît jeter quelques pensées à ma façon.
J'ai été jusqu'aux genoux dans windbg essayant d'obtenir une certaine emprise sur ce qui se passe, et encore très peu. Je serais heureux de fournir une décharge ou toute autre information qui pourrait être utile. De toute évidence, il y a très peu d'informations données de cette erreur particulière ...
Merci à l'avance, David Justice
Merci à tous pour les réponses. Je pense que nous avons réduit la recherche à un problème dans un contrôle d'arborescence tiers qui jetait une base d'exception interne sur un problème de suivi des éléments sélectionnés dans l'arborescence après le tri de la collection sous-jacente. La partie merveilleuse de l'erreur est qu'elle s'est manifestée de deux manières différentes.Un, il explose sur la propriété changée lorsque l'élément sélectionné n'est pas modifié, mais un autre enfant de l'arbre est changé, puis un événement observé de collection observable est déclenché. La seconde était une exception d'index hors plage lorsque l'élément sélectionné est modifié. – Justice