2009-11-25 5 views
0

J'ai une méthode Web appelée à partir de Jquery pour afficher un objet arborescence hiérarchique. La valeur de retour est une liste (Of T), où T est hiérarchique, une relation parent-enfant. traversal sera de parent à enfant. 1) .Net convertit automatiquement la valeur de retour de webmethod en JSON pour la renvoyer au client js. À ce stade, il jette une erreur de référence circulaire. J'ai vérifié le code et seul le parent appelle l'enfant et pas l'autre. Mais nous utilisons structureMap pour l'injection de dépendances. Est-ce que cela pourrait causer la référence circulaire?.NET Json Sérialisation circulaire Erreur de référence (l'objet implique des variables structuremap)

Note: J'ai un projet de test sans structureMap pour afficher la structure arborescente hiérarchique et je n'ai aucun problème avec la sérialisation json.

Des idées sur la façon de déboguer ce sera utile?

Répondre

0

Il est probable que votre objet enfant référence un objet tiers, qui peut référencer un autre objet, etc., et l'un des objets de la chaîne référence éventuellement l'objet parent (ou l'un des autres objets de la chaîne).

Cela ne devrait rien avoir à faire avec StructureMap. Vous devriez être capable de prouver facilement cela en écrivant un test qui crée l'instance que vous essayez de renvoyer, et l'exécuter via le sérialiseur JSON (n'utilisez pas StructureMap du tout dans le test).