3

In letzter Zeit habe ich eine größere Anzahl von kleineren Objekten verwendet, weil sie einfacher und einfacher wiederzuverwenden sind. Meistens ist es kein Problem, diese Objekte mit StructureMap (great tool, btw) ineinander zu stecken. Aber gelegentlich, ich f *** up, und ich bekomme mir eine nette Zirkelreferenz in Form einer Stapelüberlauf Ausnahme (tm).Gibt es eine Möglichkeit, Zirkelreferenzen bei der Verwendung von StructureMap zu erkennen und zu beheben?

Anders als alle meine letzten Änderungen seit dem letzten Testlauf, bietet StructureMap einen Mechanismus zum Debuggen von Zirkelverweisen, oder gibt es ein einfaches Tool, das in dieser Situation nützlich sein könnte?

Danke allen!

+0

Haben Sie eine gute Lösung gefunden? Der Aufruf von ObjectFactory.AssertConfigurationIsValid() gibt mir dieselbe StackOverflowException. – JeremyWeir

+0

Nein, es gibt leider keine gute Lösung dafür, nur vorsichtiger zu sein, wenn neue Abhängigkeiten hinzugefügt werden, mit denen große Abhängigkeitsketten verbunden sind. Ich bekomme das nicht mehr oft, weil ich mit meinen Abhängigkeitsketten etwas strategischer bin. Ich versuche zu verhindern, dass sie zu tief werden, und einige Abhängigkeiten, von denen ich weiß, dass sie sicher sind, weil ihre Ketten nicht verändert werden. –

Antwort

2

ObjectFactory.AssertConfigurationIsValid(); überprüft Ihr Diagramm und versucht, alle verstopften Typen zu instanziieren.