Je suis en train d'utiliser la version 2.2.0.0 de Ninject dans une application web asp.net et après quelques centaines de requêtes, il lance parfois une NullReferenceException dans la méthode GetProvider de la classe Binding.
Exemple de stack trace : http://pastebin.com/BbhsPQMT
L'exception survient uniquement lorsque je teste l'application en stress et l'origine de l'exception est généralement différente (résolution d'interfaces distinctes).
Pour essayer de comprendre pourquoi ce problème se produisait, j'ai regardé le code source de Ninject et inséré quelques lignes de code à des fins de débogage. J'ai ensuite confirmé que l'objet qui est nul est la propriété ProviderCallback de la classe Binding.
J'ai également ajouté du code dans l'opérateur de définition de la propriété ProviderCallback afin de comprendre s'il était défini sur null. Après avoir effectué quelques tests et examiné quelques vidages de mémoire, il semble que la propriété ProviderCallback ne soit pas définie sur une valeur nulle et je pense que l'instance est collectée par GC.
Je ne comprends toujours pas pourquoi cela se produit...
Toute aide est grandement appréciée.
Éditer : Nous avons mis à jour la dernière version de Ninject juste pour vérifier si l'exception se produit toujours, mais nous avons obtenu la même exception après avoir testé l'application en stress : http://pastebin.com/YaiaZndz